Was ist der unterschied zwischen ASL und LSL

Gast #66214
Lesenswert?

Logisches Shiften:
es wird ein Register um ein Bit (nach links oder rechts je nach Befehl)
verschoben. Das Bit, was rausgeschoben wird landet im Carry-Flag. Das
Bit, wo "nichts" wäre wird mit einer Null beschrieben.

arithmetisches shiften:
Hierbei wird auch das rausgeschobene im Carry-Flag gespeichert, aber
das Rand-Bit wird wieder an seine alte Stelle kopiert.

Logisches Shiften kann mal als Multiplikation (lSL) mit 2 oder Divison
(lsr) durch benutzen.
Gast #66215
Lesenswert?

Naja, nicht ganz. ;-)

LSL ist dasselbe wie ASL, ins LSB wird immer eine 0 nachgeschoben. ;-)

LSR und ASR sind verschieden, bei ASR wird das Vorzeichenbit erhalten.

Anders ausgedrückt: ASR ist die Division durch 2 für eine
vorzeichenbehaftete Zahl, LSR für eine `unsigned' Zahl.

Antwort schreiben

Bitte melde dich an, um einen Beitrag zu schreiben.

oder

Mit Google-Account einloggen

Die Registrierung ist kostenlos und dauert nur eine Minute.

Jetzt registrieren