Forum: Mikrocontroller und Digitale Elektronik Befehlsdauer


von Daniel (Gast)


Lesenswert?

Wie weiss ich, wie lange ein Befehl dauert und wie lange (2Bit oder
4Bit,..) das er ist. z.B

sbit a=P1^0;
.
.
.
.
a=P2;

oder

for(x=0;x<10;x++);

allg: Formel wie???

von Jan M. (mueschel)


Lesenswert?

Das kann man so allgemein nicht beantworten.
Prozessor, Compiler, Taktrate, Optimierungseinstellungen.... all das
spielt da eine Rolle. Da hilft nur ausprobieren.

von André K. (freakazoid)


Lesenswert?

Glaskugel leider bei Jahreswartung.

Vielleicht nähere Angaben?

CPU, Sprache, Dauerangabe in Takten oder Zeit, bestimmte
Problemstellung, oder allgemeine Neugierde, ...

Im Falle eines AVR, dauert ein Assembler-Befehl (14-Bit Breite?) 1-3
Takte (steht im Datenblatt). Bei Hochsprachen kommt drauf an in wieviel
Assembler-Befehle der Compiler Dein Werk zerlegt.

Grüße,
Freakazoid

von Peter D. (peda)


Lesenswert?

Laß Dir mit "#pragma cd" den erzeugten Assembler mit im *.lst-File
ausgeben und dan guck in den Befehlssatz, wie lang die jeweiligen
Befehle dauern.


Schau auch mal in den C51-Primer, da steht drin was aufwendig ist und
was effektiv (float ist z.B. sehr aufwendig).

Die Befehle beim 8051 sind 8, 16 oder 24 bittig (1, 2 oder 3 Byte).


Peter

Bitte melde dich an um einen Beitrag zu schreiben. Anmeldung ist kostenlos und dauert nur eine Minute.
Bestehender Account
Schon ein Account bei Google/GoogleMail? Keine Anmeldung erforderlich!
Mit Google-Account einloggen
Noch kein Account? Hier anmelden.