Логические команды
Логические команды
представлены в таблице 6.3.
Таблица 6.3.
Логические команды.
Мнемокод
/ Операнды
|
Описание
|
Основные
команды
|
and
назначение, источник
|
логическое
И
|
not
назначение
|
логическое
НЕ
|
or
назначение,
источник
|
логическое
ИЛИ
|
test
назначение,
источник
|
проверка
бита
|
xor
назначение,
источник
|
логическое
исключающее ИЛИ
|
Сдвиговые
команды
|
rcl
назначение,
количество
|
циклический
сдвиг влево через флаг переноса
|
rcr
назначение,
количество
|
циклический
сдвиг вправо через флаг переноса
|
rol
назначение,
количество
|
циклический
сдвиг влево
|
ror
назначение,
количество
|
циклический
сдвиг вправо
|
sal
назначение,
количество
|
арифметический
сдвиг влево
|
sar
назначение,
количество
|
арифметический
сдвиг вправо
|
shl
назначение,
количество
|
сдвиг
влево
|
shr
назначение,
количество
|
сдвиг
вправо
|
Команда test
производит логическое
умножение (and)
операндов, не изменяя их, проводит
установку флагов.
Команда sal
работает по
следующему алгоритму работы:
сдвиг всех битов
операнда влево на один разряд, при этом
выдвигаемый слева бит становится
значением флага переноса cf;
одновременно справа
в операнд вдвигается нулевой бит;
указанные выше два
действия повторяются количество раз,
равное значению второго операнда
Команда sar
работает по
следующему алгоритму работы:
сдвиг всех битов
операнда вправо на один разряд, при
этом выдвигаемый справа бит становится
значением флага переноса cf;
обратите внимание:
одновременно слева в операнд вдвигается
не нулевой бит, а значение старшего
бита операнда, то есть по мере сдвига
вправо освобождающиеся места заполняются
значением знакового разряда. По этой
причине этот тип сдвига и называется
арифметическим;
указанные выше два
действия повторяются количество раз,
равное значению второго операнда.
8