Rotacja w lewo (bajtu lub słowa), ROL



Rozkaz ROL dokonuje przesunięcia cyklicznego lewego argumentu w lewo, o liczbę bitów, określoną prawym argumentem. Gdy dokonujemy przesunięcia o 1 bit, wówczas liczba 1 jest prawym argumentem, gdy dokonujemy przesunięcia o liczbę bitów większą niż 1 prawym argumentem jest rejestr CL, który uprzednio załadowany jest liczbą, określającą o ile bitów należy przesunąć lewy argument. W rotacji bit opuszczający rejestr (komórkę pamięci) z jednego końca, wchodzi do niego (do niej) z drugiego końca, a jego wartość kopiowana jest do rejestru znaczników, jako znacznik (flaga) przeniesienia, CF. W przypadku rozkazu ROL do znacznika CF wprowadzany jest najbardziej znaczący bit argumentu (operandu). Jeśli podczas tej rotacji, o 1 bit w lewo, nie zmieni się zawartość bitu znaku, to wówczas znacznik OF jest zerowany, w przeciwnym razie znacznik OF przyjmuje wartość 1.

Przykład:

ROL AL, 1
MOV CL,14
ROL BX,CL


cofnij