Hallo zusammen, ich möchte von einem 8-Bit Register (also Low und High-Register) ein Konstante abziehen, die zwischen 8 und 32 (dec) ist. Beim AVR gibts da ja zwei schöne Befehle, einmal: subi LOW, 32 und der den Höheren Teil muss ich dann sbc HIGH, register und in register '0' laden, damit nur mein Carry abgezogen wird? Oder funktionert des auf eine andere Art und Weise. Gruß Stephan
>ich möchte von einem 8-Bit Register (also Low und High-Register)
Das wären dann 16 Bit. Ansonsten hast Du Recht.
bei einem 8bit-Register gibt es zwar ein high- und ein low-nibble, aber das ist hier völlig irrelevant. Es sei denn, du redest von einer 16bit-Zahl, die dann in 2 Registern untergebracht ist.
Wenn Du mit Pointerregistern arbeitest (X, Y, Z), kannst Du sbiw XH:XL, 32 ... sbiw YH:YL, 32 ... sbiw ZH:ZL, 32 ... benutzen.
SBIW rxl, value rxl: unteres der beiden register, nicht auf x,y,z begrenzt, value: wert 0..63
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.