02.05.2013 Aufrufe

beginner_de

beginner_de

beginner_de

MEHR ANZEIGEN
WENIGER ANZEIGEN

Erfolgreiche ePaper selbst erstellen

Machen Sie aus Ihren PDF Publikationen ein blätterbares Flipbook mit unserer einzigartigen Google optimierten e-Paper Software.

Avr-Asm-Tutorial S. 94<br />

rjmp loop<br />

Zu Beginn <strong>de</strong>r Berechnung liegen die folgen<strong>de</strong>n Bedingungen vor:<br />

rmh = R1 = 0x00 rm1 = R0 = 0xAA<br />

Z1 0 0 0 0 0 0 0 0 1 0 1 0 1 0 1 0<br />

* rm2 = R2 = 0x55<br />

Z2 0 1 0 1 0 1 0 1<br />

= reh = R4 = 0x00 rel = R3 = 0x00<br />

Erg 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0<br />

Binäres Rotieren<br />

Für das Verständnis <strong>de</strong>r Berechnung ist die Kenntnis <strong>de</strong>r Assembler-Instruktionen ROL bzw ROR<br />

wichtig. Die Instruktion verschiebt die Bits eines Registers nach links (ROL) bzw. rechts (ROR),<br />

schiebt das Carry-Bit aus <strong>de</strong>m Statusregister in die leer wer<strong>de</strong>n<strong>de</strong> Position im Register und schiebt<br />

dafür das beim Rotieren herausfallen<strong>de</strong> Bit in das Carry-Flag. Dieser Vorgang wird für das Linksschieben<br />

mit <strong>de</strong>m Inhalt <strong>de</strong>s Registers von 0xAA, für das Rechtsschieben mit 0x55 gezeigt:<br />

Multiplikation im Studio<br />

Die folgen<strong>de</strong>n Bil<strong>de</strong>r zeigen<br />

die einzelnen Schritte im Studio:<br />

Der Object-Co<strong>de</strong> ist gestartet,<br />

<strong>de</strong>r Cursor steht auf <strong>de</strong>r ersten<br />

Instruktion. Mit F11 machen<br />

wir Einzelschritte.

Hurra! Ihre Datei wurde hochgeladen und ist bereit für die Veröffentlichung.

Erfolgreich gespeichert!

Leider ist etwas schief gelaufen!