Forum: Mikrocontroller und Digitale Elektronik Verständnisfrage Register/Assembler ATMega32


von Frank (Gast)


Lesenswert?

Hallöchen,


mit dem Assembler Befehl: ROL oder ROR kann man entweder Rechtsrotieren 
durch das Carrybit oder Linksrotieren durchs Carrybit.

Jetzt meine Frage, wie schauts da aus wenn ich das Register: R2 mit 
0b11111111 belege und das Register: R3 mit 0b00000000 und jetzt den 
Assemblerbefehl ROL oder ROR nutze wie schaut das aus!?

mhh die Register sind doch folgendermaßen angeordnet:

-----
R+ = ***
R4 = ***
R3 = 0000.0000
R2 = 1111.1111
R1 = ***
R0 = ***
-----

beim Rechtsrotieren des Registers R2 passiert da folgendes?

R2 = 0111.1111
R1 = 1***

??

oder ist das vollkommener Blödsinn?

grüße Frank

von fubu1000 (Gast)


Lesenswert?

Blödsinn ;-)

von Läubi .. (laeubi) Benutzerseite


Lesenswert?

Das "übrige" Bit landet im Carry! Nicht im nächsten Regsiter!
Und da kommt es auch her.

Rotieren "durch register"

lsr r1
ror r2

Drück mal im AVRStudio auf F1 da gibts ne Hilfe zu allen befehlen und 
die meisten haben auch nen kleines Beispiel wie man die einsezt.

von Frank (Gast)


Lesenswert?

Ohja genial das hilft schon weiter.


Danke

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.