Forum: Mikrocontroller und Digitale Elektronik Z-Register ein Bit nach rechts


von Micha R. (michaavr)


Lesenswert?

Hallo,

kann mir jemand sagen, wie ich in Assembler (AVR) das Z-Register, also 
16 Bit um ein Bit nach rechts verschiebe?

Da ich in Assembler noch ganz am Anfang stehe, würde ich mich über ein 
kleines Beispiel freuen.

Gruß Mitch.

Die Register sind geladen. Es geht nur noch um das Verschieben von ZL 
und ZH bezüglich der Überlauf vom Bit0 ZH.

Gruß Mitch.

von Läubi .. (laeubi) Benutzerseite


Lesenswert?

Im "richtigen" Abschnitt de Forums sicherlich:
>Forum: Codesammlung
>Wenn ihr eigene Programme oder Anleitungen geschrieben habt könnt ihr sie >hier 
posten. Fragen werden gelöscht!

Also hier KEINE Fragen!

Rechtschieben geht mit normalem rechtschift und anschließendem rotieren 
(ror) einfach im AVR Studio mal auf F1 drücken da werden die Befehle 
erlärt...

von D. W. (dave) Benutzerseite


Lesenswert?

Ich hab mich grad gefragt, was dich Bit0 interessiert, aber du meinst ja 
Bit8.
1
lor r31 ;logical shift right
2
ror r30 ;rotate right through carry

Schiebt bei Bit15 ne 0 rein und Bit8 wird ins Carry verschoben. ror 
schiebt das Carry von links rein.

Sollte funktionieren, hab aber seit ewiger Zeit kein AVRASM mehr 
programmiert.

von Micha R. (michaavr)


Lesenswert?

Vielen Dank für die Antwort.
Das Problem ist gelöst. Übrigens ich programmiere nicht in Studio, 
sendern in BascomAVR. Deswegen funktioniert die Hilfe über den Befehl 
lsr und ror nicht.

Trotzdem danke.

Mitch.

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.