Hallo habe ein kleines Problem damit bei der folgenden Befehlssequenz
die Ablaufzeit zu Berechnen weil ich nich genau weiß wann das Carry Flag
nun wirklich gesetzt wird.
start: push r17
clc
ldi r17,0x00
st01: dec r17
brcs st01
pop r17
ret
nun ist es ja eigentlich so das der dec-Befehl keinen Einfluss auf das
Carryflag hat.
Nun ist meine Frage läuft die Schleife dann 255 mal durch und dann wird
das C-Flag gesetzt oder wird es trotzdem nach dem erstenmal dec gesetzt
weil ein Überlaufstattfindet?
Zyklen
push 2
clc 1
ldi 1
dec 1
brcs1/2
pop 2
der ATmega ist mit 8 MHz getaktet also hat damit eigentlich eine
Zykluszeit von 125 ns.
wenn mir jemand helfen könnte wäre das sehr schön
Danke
sprich das programm rent einmal nach unten durch ohne nochmal auf die Marke zu springen?
Hi >sprich das programm rent einmal nach unten durch ohne nochmal auf die >Marke zu springen? Ja. 'DEC' beeinflußt das Carry-Flag nämlich nicht. Und da du C löscht bleibt dem Programm nichts anderes übrig. Was hast du denn vor? MfG Spess
das is ne Prüfungsaufgabe und ich wollte sehn ob mein Gedankengang richtig war das ich am ende auf 1,25 us komme ^^ da ich nächsten Mittwoch Prüfung habe und ich grad die Probeklausur rechne. Und Danke an Euch die mir geholfen haben ^^
hab nochwas vergessen ein ret kommt auchnoch mit unten dran und das sind nochal 4 Zyklen mehr ^^
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
Mit Google-Account einloggen
Noch kein Account? Hier anmelden.