Справочник по языку Ассемблера IBM PC

SHR


Сдвиг логический операнда вправо

ASCII-коррекция после сложения

Схема команды:  shr операнд,кол-во_сдвигов 

Назначение: логический сдвиг операнда вправо.


Алгоритм работы:

сдвиг всех битов операнда вправо на один разряд; при этом выдвигаемый справа бит становится значением флага переноса cf;

одновременно слева в операнд вдвигается нулевой бит;

указанные выше два действия повторяются количество раз, равное значению второго операнда.



Состояние флагов после выполнения команды:

11 07 06 04 02 00
OF SF ZF AF PF CF
?r r r ? r

Применение:


Команда shr используется для логического сдвига разрядов операнда вправо. Так же, как и для других сдвигов, значение второго операнда (счетчика сдвига) ограничено диапазоном 0...31. Это объясняется тем, что микропроцессор использует только пять младших разрядов операнда количество_разрядов. В отличие от других команд сдвига, флаг of всегда сбрасывается в ноль в операциях сдвига на один разряд.
Команду shr можно использовать для деления целочисленных операндов без знака на степени 2.

        mov     cl,4         shr     eax,cl  ;(eax) разделить на 2 в степени 4         

См. также: урок 9 и команды , , , , , ,



Содержание раздела