Forum: Mikrocontroller und Digitale Elektronik avr-asm nibbles und bits tauschen


von Charly (Gast)


Lesenswert?

Hallo, bin avr-asm Einsteiger und habe mal eine Frage.

Ich muss das obere und das untere Nibble eines Registers tauschen, aber 
so, dass das ursprünglich obere nibble nochmals bitweise gedreht wird. 
Das neue obere Nibble soll gelöscht werden.

Also aus Bit 7 wird Bit 0 und nicht Bit 3.

geht das so?

bst r1,7
bld r1,0
bst r1,6
bld r1,1
bst r1,5
bld r1,2
bst r1,4
bld r1,3
andi r0,0b00001111



AVR-Studio habe ich noch nicht benutzt. Nur die das Instruction-Set für 
die 8-Bits AVR liegen als pdf vor.


Charly

von Falk B. (falk)


Lesenswert?

@Charly (Gast)

>AVR-Studio habe ich noch nicht benutzt. Nur die das Instruction-Set für
>die 8-Bits AVR liegen als pdf vor.

Ist soweit OK, mir fällt spontan keine bessere Lösung ein.

MFG
Falk

von Klugscheisser (Gast)


Lesenswert?

Das hier hilft vielleicht weiter.
Beitrag "c binärvariable drehen"

von spess53 (Gast)


Lesenswert?

Hi

>bld r1,3
>andi r0,0b00001111

Fällt dir was auf?

MfG Spess

von Kachel-Heinz (Gast)


Lesenswert?

Grins... (ANDI auf untere Register...)

KH

von Paul B. (paul_baumann)


Lesenswert?

Daß ANDI erst mit Registern von R16 aus aufwärts funktioniert habe ich 
auch schon schmerzlich erfahren. ;-)

Assembler ist hart gegen den Bediener. :-(

MfG Paul

von spess53 (Gast)


Lesenswert?

Hi

Ausserdem solltest du die Operation auch auf das Register anwenden, in 
dem sich dein Ergebnis befindet.

Mfg Spess

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.