ВУЗ:
Составители:
56
Логические команды
предназначены для выполнения четырех логических действий над 8- и 16-
битовыми логическими структурами: получение инверсного кода, логи-
ческое произведение, логическая сумма, сумма по модулю два. Команды
AND, TEST, OR и XOR воздействуют на арифметические флаги сле-
дующим образом: флаги OF и CF всегда сбрасываются в нулевое состоя-
ние; состояния флагов SF, ZF, PF зависят от полученного результата и
определяются по тем же правилам, что и в командах арифметических опе-
раций; состояние флага AF не определено. Команда NOT не влияет на со-
стояние флагов.
Пример: not ax
Код Действие
F7D0
Значения 16 бит регистра ax меняются на противо-
положные.
До выполнения После выполнения
ax=5555 ax=AAAA
ip=100 ip=102
Мнемо-
ника
Действие
Байт
КОП
Постбайт
NOT
Инвертирование разрядов операнда в
памяти/регистре.
1111011w mod 010 r/m
Логическое умножение операнда из
памяти/регистра и операнда из регист-
ра.
001000dw mod reg r/m
Логическое умножение непосредствен-
ного операнда и операнда из памя-
ти/регистра.
1000000w mod 100 r/m
AND
Логическое умножение непосредствен-
ного операнда и операнда в аккумуля-
торе.
0010010w нет
Установка регистра FLAGS в соответ-
ствии с результатом логического ум-
ножения операнда из памяти/регистра и
операнда из регистра.
1000010w mod reg r/m
TEST
Установка регистра FLAGS в соответ-
ствии с результатом логического ум-
ножения непосредственного операнда и
операнда из памяти/регистра.
1111011w mod 000 r/m
56
Логические команды
предназначены для выполнения четырех логических действий над 8- и 16-
битовыми логическими структурами: получение инверсного кода, логи-
ческое произведение, логическая сумма, сумма по модулю два. Команды
AND, TEST, OR и XOR воздействуют на арифметические флаги сле-
дующим образом: флаги OF и CF всегда сбрасываются в нулевое состоя-
ние; состояния флагов SF, ZF, PF зависят от полученного результата и
определяются по тем же правилам, что и в командах арифметических опе-
раций; состояние флага AF не определено. Команда NOT не влияет на со-
стояние флагов.
Пример: not ax
Код Действие
Значения 16 бит регистра ax меняются на противо-
F7D0
положные.
До выполнения После выполнения
ax=5555 ax=AAAA
ip=100 ip=102
Мнемо- Байт
Действие Постбайт
ника КОП
Инвертирование разрядов операнда в
NOT 1111011w mod 010 r/m
памяти/регистре.
Логическое умножение операнда из
памяти/регистра и операнда из регист- 001000dw mod reg r/m
ра.
Логическое умножение непосредствен-
AND ного операнда и операнда из памя- 1000000w mod 100 r/m
ти/регистра.
Логическое умножение непосредствен-
ного операнда и операнда в аккумуля- 0010010w нет
торе.
Установка регистра FLAGS в соответ-
TEST ствии с результатом логического ум- 1000010w mod reg r/m
ножения операнда из памяти/регистра и
операнда из регистра.
Установка регистра FLAGS в соответ-
ствии с результатом логического ум-
1111011w mod 000 r/m
ножения непосредственного операнда и
операнда из памяти/регистра.
Страницы
- « первая
- ‹ предыдущая
- …
- 54
- 55
- 56
- 57
- 58
- …
- следующая ›
- последняя »
