| Команда |
Выполняемая операция |
| | Код |
Формат | Группа |
 |
 |
 |
 |
| AAA |
ASCII-коррекция после сложения
ASCII Adjust after Addition |
| | 37 |
-------- |
Десятичная арифметика |
| AAD |
ASCII-коррекция регистра AX перед делением
ASCII Adjust AX before Division |
| | D5 |
-------- 00001010 |
Десятичная арифметика |
| AAM |
ASCII-коррекция регистра AX после умножения
ASCII Adjust AX after Multiply |
| | D4 |
-------- 00001010 |
Десятичная арифметика |
| AAS |
ASCII-коррекция после вычитания
ASCII Adjust after Subtraction |
| | 3F |
-------- |
Десятичная арифметика |
| ADC |
Сложение с переносом Add with Carry |
| | 10 |
------dw MRM |
Основная арифметика |
| | 11 |
------dw MRM |
|
| | 12 |
------dw MRM |
|
| | 13 |
------dw MRM |
|
| | 14 |
-------w data(1) |
|
| | 15 |
-------w data(2/4) |
|
| | 80 /010 |
------sw NNN data(1) |
|
| | 81 /010 |
------sw NNN data(2/4) |
|
| | 82 /010 |
------sw NNN data(1) |
|
| | 83 /010 |
------sw NNN data(1) |
|
| ADD |
Сложение Add |
| | 00 |
------dw MRM |
Основная арифметика |
| | 01 |
------dw MRM |
|
| | 02 |
------dw MRM |
|
| | 03 |
------dw MRM |
|
| | 04 |
-------w data(1) |
|
| | 05 |
-------w data(2/4) |
|
| | 80 /000 |
------sw NNN data(1) |
|
| | 81 /000 |
------sw NNN data(2/4) |
|
| | 82 /000 |
------sw NNN data(1) |
|
| | 83 /000 |
------sw NNN data(1) |
|
| AND |
Логическое "И" Logical "AND" |
| | 20 |
------dw MRM |
Основная арифметика |
| | 21 |
------dw MRM |
  |
| | 22 |
------dw MRM |
  |
| | 23 |
------dw MRM |
  |
| | 24 |
-------w data(1) |
  |
| | 25 |
-------w data(2/4) |
  |
| | 80 /100 |
------sw NNN data(1) |
  |
| | 81 /100 |
------sw NNN data(2/4) |
  |
| | 82 /100 |
------sw NNN data(1) |
  |
| | 83 /100 |
------sw NNN data(1) |
  |
| ARPL |
Коррекция поля RPL селектора
Adjust Requested Privilege Level |
| | 63 |
-------- MRM |
Привилегированные |
 |
 |
 |
| BOUND |
Контроль нахождения индекса массива в границах
Check array index against Bound |
| | 62 |
-------- MRM |
Специальные команды |
| BSF |
Сканирование бита вперед Bit Scan Forward |
| | 0F BC |
-------- MRM |
Работа с битами |
| BSR |
Сканирование бита назад Bit Scan Reverse |
| | 0F BD |
-------- MRM |
Работа с битами |
| BSWAP |
Перестановка байтов (внутри 32-битного регистра)
Byte Swap |
| | 0F C8 |
-----reg |
Пересылка данных |
| | 0F C9 |
-----reg |
  |
| | 0F CA |
-----reg |
  |
| | 0F CB |
-----reg |
  |
| | 0F CC |
-----reg |
  |
| | 0F CD |
-----reg |
  |
| | 0F CE |
-----reg |
  |
| | 0F CF |
-----reg |
  |
| BT |
Проверка бита Bit Test |
| | 0F A3 |
-------- MRM |
Работа с битами |
| |
0F BA | /100 |
-------- NNN data(1) |
|
| BTC |
Проверка бита и дополнение Bit Test and Complement |
| | 0F BB |
-------- MRM |
Работа с битами |
| |
0F BA | /111 |
-------- NNN data(1) |
|
| BTR |
Проверка бита и сброс в нуль Bit Test and Reset |
| | 0F B3 |
-------- MRM |
Работа с битами |
| |
0F BA | /110 |
-------- NNN data(1) |
|
| BTS |
Проверка бита и установка в единицу Bit Test and Set |
| | 0F AB |
-------- MRM |
Работа с битами |
| |
0F BA | /101 |
-------- NNN data(1) |
|
 |
 |
 |
| CALL |
Вызов процедуры Call Procedure |
| | E8 |
-------- addr(2/4) |
Переходы и процедуры |
| | FF /010 |
-------- NNN |
  |
| | 9A |
-------- addr(4/6) |
|
| | FF /011 |
-------- NNN |
  |
| CBW |
Преобразование байта в слово Convert Byte to Word |
| | 98 |
-------- |
Пересылка данных |
| CDQ |
Преобразование двойного слова в счетверенное слово
Convert Doubleword to Quadword |
| | 99 |
-------- |
Пересылка данных |
| CLC |
Сброс флажка переноса Clear Carry flag |
| | F8 |
-------- |
Установка флажков |
| CLD |
Сброс флажка направления Clear Direction flag |
| | FC |
-------- |
Установка флажков |
| CLI |
Сброс флажка прерывания Clear Interrupt flag |
| | FA |
-------- |
Установка флажков |
| CLTS |
Сброс флажка переключения задачи (в регистре CR0)
Clear Task Switched flag (in CR0) |
| | 0F 06 |
-------- |
Привилегированные |
| CMC |
Инвертирование флажка переноса
Complement Carry flag |
| | F5 |
-------- |
Установка флажков |
| CMP |
Сравнение двух операндов Compare two operands |
| | 38 |
------dw MRM |
Основная арифметика |
| | 39 |
------dw MRM |
  |
| | 3A |
------dw MRM |
  |
| | 3B |
------dw MRM |
  |
| | 3C |
-------w data(1) |
  |
| | 3D |
-------w data(2/4) |
  |
| | 80 /111 |
------sw NNN data(1) |
  |
| | 81 /111 |
------sw NNN data(2/4) |
  |
| | 82 /111 |
------sw NNN data(1) |
  |
| | 83 /111 |
------sw NNN data(1) |
  |
| CMPS |
Сравнение цепочечных операндов Compare String operands |
| | A6 |
-------w |
Цепочечные команды |
| | A7 |
-------w |
|
| CMPXCHG |
Сравнение и обмен Compare and Exchange |
| | 0F A6 |
-------w MRM |
Специальные команды |
| | 0F A7 |
-------w MRM |
|
| CWD |
Преобразование слова в двойное слово
Convert Word to Doubleword |
| | 99 |
-------- |
Пересылка данных |
| CWDE |
Преобразование слова в двойное слово
Convert Word to Doubleword Extended |
| | 98 |
-------- |
Пересылка данных |
 |
 |
 |
| DAA |
Десятичная коррекция AL после сложения
Decimal Adjust AL after Addition |
| | 27 |
-------- |
Десятичная арифметика |
| DAS |
Десятичная коррекция AL после вычитания
Decimal Adjust AL after Subtraction |
| | 2F |
-------- |
Десятичная арифметика |
| DEC |
Декремент на 1 Decrement by 1 |
| | 48 |
-----reg |
Инкремент и декремент |
| | 49 |
-----reg |
|
| | 4A |
-----reg |
|
| | 4B |
-----reg |
|
| | 4C |
-----reg |
|
| | 4D |
-----reg |
|
| | 4E |
-----reg |
|
| | 4F |
-----reg |
|
| | FE /001 |
-------w NNN |
  |
| | FF /001 |
-------w NNN |
  |
| DIV |
Беззнаковое деление Unsigned Divide |
| | F6 /110 |
-------w NNN |
Умножение и деление |
| | F7 /110 |
-------w NNN |
|
 |
 |
 |
| ENTER |
Образование стекового кадра для параметров процедуры
Make stack frame for procedure parameters |
| | C8 |
-------- data(2) data(1) |
Переходы и процедуры |
| ESC |
Универсальная единая команда для сопроцессора с плавающей точкой
Escape (for floating-point unit) |
| | D8 |
-----fpu NNN |
Сопроцессор |
| | D9 |
-----fpu NNN |
|
| | DA |
-----fpu NNN |
|
| | DB |
-----fpu NNN |
|
| | DC |
-----fpu NNN |
|
| | DD |
-----fpu NNN |
|
| | DE |
-----fpu NNN |
|
| | DF |
-----fpu NNN |
|
 |
 |
 |
| F... |
Команды сопроцессора с плавающей точкой
Floating-point coprocessor instructions |
 |
 |
 |
| HLT |
Останов Halt |
| | F4 |
-------- |
Привилегированные |
 |
 |
 |
| IDIV |
Знаковое деление Signed Divide |
| | F6 /111 |
-------w NNN |
Умножение и деление |
| | F7 /111 |
-------w NNN |
|
| IMUL |
Знаковое умножение Signed Multyply |
| | 69 |
------s- MRM data(2/4) |
Умножение и деление |
| | 6B |
------s- MRM data(1) |
|
| | F6 /101 |
-------w NNN |
|
| | F7 /101 |
-------w NNN |
|
| | 0F AF |
-------- MRM |
|
| IN |
Ввод из порта Input from Port |
| | E4 |
-------w data(1) |
Системные команды |
| | E5 |
-------w data(1) |
|
| | EC |
-------w |
|
| | ED |
-------w |
|
| INC |
Инкремент на 1 Increment by 1 |
| | 40 |
-----reg |
Инкремент и декремент |
| | 41 |
-----reg |
|
| | 42 |
-----reg |
|
| | 43 |
-----reg |
|
| | 44 |
-----reg |
|
| | 45 |
-----reg |
|
| | 46 |
-----reg |
|
| | 47 |
-----reg |
|
| | FE /000 |
-------w NNN |
  |
| | FF /000 |
-------w NNN |
  |
| INS |
Ввод из порта в цепочку Input from Port to String |
| | 6C |
-------w |
Цепочечные команды |
| | 6D |
-------w |
|
| INT |
Вызов процедуры прерывания
Call to Interrupt Procedure |
| | CD |
-------- data(1) |
Вызов прерывания |
| INT 3 |
Вызов процедуры прерывания 3
Call to Interrupt Procedure 3 |
| | CC |
-------- |
Вызов прерывания |
| INTO |
Вызов процедуры прерывания 4, если OF=1
Interrupt on Overflow |
| | CE |
-------- |
Вызов прерывания |
| INVD |
Недостоверность кэш-памяти Invalidate Cache |
| | 0F 08 |
-------- |
Системные команды |
| INVLPG |
Недостоверность элемента буфера TLB
Invalidate TLB entry |
| |
0F 01 | /111 |
-------- NNN |
Системные команды |
| IRET |
Возврат из прерывания Interrupt Return |
| | CF |
-------- |
Вызов прерывания |
 |
 |
 |
| J(cond) |
Условная передача управления Jump Conditionally |
| | 70 (+cond) |
----cond addr(1) |
Условные команды |
| | 0F 80 (+cond) |
----cond addr(2/4) |
|
JCXZ /JECXZ |
Переход, если значение счетчика равно нулю
Jump if CX is Zero |
| | E3 |
-------- addr(1) |
Условные команды |
| JMP |
Безусловная передача управления Jump Unconditionally |
| | EB |
-------- addr(1) |
Переходы и процедуры |
| | E9 |
-------- addr(2/4) |
|
| | FF /100 |
-------- NNN |
  |
| | EA |
-------- addr(4/6) |
|
| | FF /101 |
-------- NNN |
  |
 |
 |
 |
| LAHF |
Пересылка из регистра флажков в регистр AH
Load Flags into AH Register |
| | 9F |
-------- |
Установка флажков |
| LAR |
Загрузка байта прав доступа
Load Access Rights byte |
| | 0F 02 |
-------- MRM |
Привилегированные |
| LDS |
Загрузка полного указателя (для DS) Load Far Pointer (DS) |
| | C5 |
-------- MRM |
Сегментные регистры |
| LEA |
Загрузка эффективного адреса Load Effective Address |
| | 8D |
-------- MRM |
Специальные команды |
| LEAVE |
Отмена действия команды ENTER перед выходом из процедуры
High Level Procedure Exit |
| | C9 |
-------- |
Переходы и процедуры |
| LES |
Загрузка полного указателя (для ES) Load Far Pointer (ES) |
| | C4 |
-------- MRM |
Сегментные регистры |
| LFS |
Загрузка полного указателя (для FS) Load Far Pointer (FS) |
| | 0F B4 |
-----sgr MRM |
Сегментные регистры |
| LGDT |
Загрузка регистра глобальной дескрипторной таблицы
Load Global Descriptor Table Register |
| |
0F 01 | /010 |
-------- NNN |
Привилегированные |
| LGS |
Загрузка полного указателя (для GS) Load Far Pointer (GS) |
| | 0F B5 |
-----sgr MRM |
Сегментные регистры |
| LIDT |
Загрузка регистра дескрипторной таблицы прерываний
Load Interrupt Descriptor Table Register |
| |
0F 01 | /011 |
-------- NNN |
Привилегированные |
| LLDT |
Загрузка регистра локальной дескрипторной таблицы
Load Local Descriptor Table Register |
| |
0F 00 | /010 |
-------- NNN |
Привилегированные |
| LMSW |
Загрузка слова состояния машины Load Machine Status Word |
| |
0F 01 | /110 |
-------- NNN |
Привилегированные |
| LOCK |
Префикс выдачи сигнала LOCK#
Lock the Bus (prefix) |
| | F0 |
(префикс перед командой) |
Системные команды |
| LODS |
Загрузка цепочечного операнда в аккумулятор
Load String Operand |
| | AC |
-------w |
Цепочечные команды |
| | AD |
-------w |
|
| LOOP |
Управление циклом со счетчиком в регистре CX
Loop Control with CX Counter |
| | E2 |
-------- addr(1) |
Условные команды |
LOOPE /LOOPZ |
Управление циклом со счетчиком в регистре CX
Loop Control with CX Counter |
| | E1 |
-------- addr(1) |
Условные команды |
LOOPNE /LOOPNZ |
Управление циклом со счетчиком в регистре CX
Loop Control with CX Counter |
| | E0 |
-------- addr(1) |
Условные команды |
| LSL |
Загрузка предела сегмента Load Segment Limit |
| | 0F 03 |
-------- MRM |
Системные команды |
| LSS |
Загрузка полного указателя (для SS) Load Far Pointer (SS) |
| | 0F B2 |
-----sgr MRM |
Сегментные регистры |
| LTR |
Загрузка регистра задачи Load Task Register |
| |
0F 00 | /011 |
-------- NNN |
Привилегированные |
 |
 |
 |
| MOV |
Пересылка данных Move Data |
| | 88 |
------dw MRM |
Пересылка данных |
| | 89 |
------dw MRM |
  |
| | 8A |
------dw MRM |
  |
| | 8B |
------dw MRM |
  |
| | A0 |
------dw addr(2/4) |
  |
| | A1 |
------dw addr(2/4) |
  |
| | A2 |
------dw addr(2/4) |
  |
| | A3 |
------dw addr(2/4) |
  |
| | C6 /000 |
-------w NNN data(1) |
  |
| | C7 /000 |
-------w NNN data(2/4) |
  |
| | B0 |
----wreg data(1) |
  |
| | B1 |
----wreg data(1) |
  |
| | B2 |
----wreg data(1) |
  |
| | B3 |
----wreg data(1) |
  |
| | B4 |
----wreg data(1) |
  |
| | B5 |
----wreg data(1) |
  |
| | B6 |
----wreg data(1) |
  |
| | B7 |
----wreg data(1) |
  |
| | B8 |
----wreg data(2/4) |
  |
| | B9 |
----wreg data(2/4) |
  |
| | BA |
----wreg data(2/4) |
  |
| | BB |
----wreg data(2/4) |
  |
| | BC |
----wreg data(2/4) |
  |
| | BD |
----wreg data(2/4) |
  |
| | BE |
----wreg data(2/4) |
  |
| | BF |
----wreg data(2/4) |
  |
| MOV |
Пересылка в сегментные регистры и из них
Move to/from Segment Registers |
| | 8C |
------d- MRM |
Сегментные регистры |
| | 8E |
------d- MRM |
  |
| MOV |
Пересылка в специальные регистры и из них
Move to/from Special Registers |
| | 0F 20 |
------d- MRM |
Привилегированные |
| | 0F 22 |
------d- MRM |
|
| | 0F 21 |
------d- MRM |
|
| | 0F 23 |
------d- MRM |
|
| | 0F 24 |
------d- MRM |
|
| | 0F 26 |
------d- MRM |
|
| MOVS |
Пересылка данных из цепочки в цепочку
Move String Data |
| | A4 |
-------w |
Цепочечные команды |
| | A5 |
-------w |
|
| MOVSX |
Пересылка со знаковым расширением
Move with Sign-Extend |
| | 0F BE |
-------w MRM |
Пересылка данных |
| | 0F BF |
-------w MRM |
|
| MOVZX |
Пересылка с нулевым расширением
Move with Zero-Extend |
| | 0F B6 |
-------w MRM |
Пересылка данных |
| | 0F B7 |
-------w MRM |
|
| MUL |
Беззнаковое умножение Unsigned Multiply |
| | F6 /100 |
-------w NNN |
Умножение и деление |
| | F7 /100 |
-------w NNN |
|
 |
 |
 |
| NEG |
Получение дополнительного кода (изменение знака)
Two's Complement Negation |
| | F6 /011 |
-------w NNN |
Основная арифметика |
| | F7 /011 |
-------w NNN |
  |
| NOP |
Пустая операция No Operation |
| | 90 |
-------- |
Пересылка данных |
| NOT |
Инвертирование One's Complement Negation |
| | F6 /010 |
-------w NNN |
Основная арифметика |
| | F7 /010 |
-------w NNN |
  |
 |
 |
 |
| OR |
Логическое включающее "ИЛИ" Logical Inclusive "OR" |
| | 08 |
------dw MRM |
Основная арифметика |
| | 09 |
------dw MRM |
  |
| | 0A |
------dw MRM |
  |
| | 0B |
------dw MRM |
  |
| | 0C |
-------w data(1) |
  |
| | 0D |
-------w data(2/4) |
  |
| | 80 /001 |
------sw NNN data(1) |
  |
| | 81 /001 |
------sw NNN data(2/4) |
  |
| | 82 /001 |
------sw NNN data(1) |
  |
| | 83 /001 |
------sw NNN data(1) |
  |
| OUT |
Вывод в порт Output to Port |
| | E6 |
-------w data(1) |
Системные команды |
| | E7 |
-------w data(1) |
|
| | EE |
-------w |
|
| | EF |
-------w |
|
| OUTS |
Вывод цепочки в порт Output String to Port |
| | 6E |
-------w |
Цепочечные команды |
| | 6F |
-------w |
|
 |
 |
 |
| POP |
Извлечение слова из стека Pop Word from Stack |
| | 58 |
-----reg |
Работа со стеком |
| | 59 |
-----reg |
|
| | 5A |
-----reg |
|
| | 5B |
-----reg |
|
| | 5C |
-----reg |
|
| | 5D |
-----reg |
|
| | 5E |
-----reg |
|
| | 5F |
-----reg |
|
| | 8F /000 |
-------- NNN |
  |
| POP |
Извлечение слова из стека в сегментный регистр
Pop Word from Stack into Segment Register |
| | 07 |
---sr--- |
Работа со стеком |
| | 17 |
---sr--- |
|
| | 1F |
---sr--- |
|
| | 0F A1 |
--sgr--- |
|
| | 0F A9 |
--sgr--- |
|
| POPA |
Извлечение из стека всех общих регистров Pop All |
| | 61 |
-------- |
Работа со стеком |
| POPF |
Извлечение из стека в регистр флажков Pop Flags |
| | 9D |
-------- |
Работа со стеком |
| PUSH |
Засылка операнда в стек Push Operand onto Stack |
| | 50 |
-----reg |
Работа со стеком |
| | 51 |
-----reg |
|
| | 52 |
-----reg |
|
| | 53 |
-----reg |
|
| | 54 |
-----reg |
|
| | 55 |
-----reg |
|
| | 56 |
-----reg |
|
| | 57 |
-----reg |
|
| | FF /110 |
-------- NNN |
  |
| | 68 |
------s- data(2/4) |
  |
| | 6A |
------s- data(1) |
  |
| PUSH |
Засылка в стек из сегментного регистра
Push onto Stack from Segment Register |
| | 06 |
---sr--- |
Работа со стеком |
| | 0E |
---sr--- |
|
| | 16 |
---sr--- |
|
| | 1E |
---sr--- |
|
| | 0F A0 |
--sgr--- |
|
| | 0F A8 |
--sgr--- |
|
| PUSHA |
Засылка в стек всех общих регистров Push All |
| | 60 |
-------- |
Работа со стеком |
| PUSHF |
Засылка в стек регистра флажков Push Flags |
| | 9C |
-------- |
Работа со стеком |
 |
 |
 |
| RCL |
Циклический сдвиг влево с участием флажка CF Rotate Left |
| | D0 /010 |
-------w NNN |
Команды сдвига |
| | D1 /010 |
-------w NNN |
|
| | D2 /010 |
-------w NNN |
|
| | D3 /010 |
-------w NNN |
|
| | C0 /010 |
-------w NNN data(1) |
  |
| | C1 /010 |
-------w NNN data(1) |
  |
| RCR |
Циклический сдвиг вправо с участием флажка CF Rotate Right |
| | D0 /011 |
-------w NNN |
Команды сдвига |
| | D1 /011 |
-------w NNN |
|
| | D2 /011 |
-------w NNN |
|
| | D3 /011 |
-------w NNN |
|
| | C0 /011 |
-------w NNN data(1) |
  |
| | C1 /011 |
-------w NNN data(1) |
  |
| REP |
Префикс повторения цепочечной операции Repeat String (prefix) |
| | F2 |
(префикс перед командой) |
Цепочечные команды |
REPE /REPZ |
Префикс повторения цепочечной операции Repeat String (prefix) |
| | F3 |
(префикс перед командой) |
Цепочечные команды |
REPNE /REPNZ |
Префикс повторения цепочечной операции Repeat String (prefix) |
| | F2 |
(префикс перед командой) |
Цепочечные команды |
| RET |
Возврат из процедуры Return from Procedure |
| | C3 |
-------- |
Переходы и процедуры |
| | C2 |
-------- data(2) |
  |
| | CB |
-------- |
|
| | CA |
-------- data(2) |
  |
| ROL |
Циклический сдвиг влево Rotate Left |
| | D0 /000 |
-------w NNN |
Команды сдвига |
| | D1 /000 |
-------w NNN |
|
| | D2 /000 |
-------w NNN |
|
| | D3 /000 |
-------w NNN |
|
| | C0 /000 |
-------w NNN data(1) |
  |
| | C1 /000 |
-------w NNN data(1) |
  |
| ROR |
Циклический сдвиг вправо Rotate Right |
| | D0 /001 |
-------w NNN |
Команды сдвига |
| | D1 /001 |
-------w NNN |
|
| | D2 /001 |
-------w NNN |
|
| | D3 /001 |
-------w NNN |
|
| | C0 /001 |
-------w NNN data(1) |
  |
| | C1 /001 |
-------w NNN data(1) |
  |
 |
 |
 |
| SAHF |
Пересылка регистра AH в регистр флажков
Store AH into Flags |
| | 9E |
-------- |
Установка флажков |
| SAL |
Сдвиг влево (умножение на 2) Shift Left |
| | D0 /100 |
-------w NNN |
Команды сдвига |
| | D1 /100 |
-------w NNN |
|
| | D2 /100 |
-------w NNN |
|
| | D3 /100 |
-------w NNN |
|
| | C0 /100 |
-------w NNN data(1) |
  |
| | C1 /100 |
-------w NNN data(1) |
  |
| SALC |
Установка регистра AL по флажку CF Set AL by CF flag |
| | D6 |
-------- |
Установка флажков |
| SAR |
Сдвиг вправо (знаковое деление на 2) Shift Right |
| | D0 /111 |
-------w NNN |
Команды сдвига |
| | D1 /111 |
-------w NNN |
|
| | D2 /111 |
-------w NNN |
|
| | D3 /111 |
-------w NNN |
|
| | C0 /111 |
-------w NNN data(1) |
  |
| | C1 /111 |
-------w NNN data(1) |
  |
| SBB |
Вычитание с заемом Subtract with Borrow |
| | 18 |
------dw MRM |
Основная арифметика |
| | 19 |
------dw MRM |
  |
| | 1A |
------dw MRM |
  |
| | 1B |
------dw MRM |
  |
| | 1C |
-------w data(1) |
  |
| | 1D |
-------w data(2/4) |
  |
| | 80 /011 |
------sw NNN data(1) |
  |
| | 81 /011 |
------sw NNN data(2/4) |
  |
| | 82 /011 |
------sw NNN data(1) |
  |
| | 83 /011 |
------sw NNN data(1) |
  |
| SCAS |
Сравнение (сканирование) цепочечных данных
Compare (Scan) String Data |
| | AE |
-------w |
Цепочечные команды |
| | AF |
-------w |
|
| SET(cond) |
Установка байта по условию Set Conditionally |
| |
0F 90 (+cond)
/000 |
----cond NNN |
Условные команды |
| SGDT |
Сохранение регистра глобальной дескрипторной таблицы
Store Global Descriptor Table |
| |
0F 01 | /000 |
-------- NNN |
Привилегированные |
| SHL |
Сдвиг влево (умножение на 2) Shift Left |
| | D0 /100 |
-------w NNN |
Команды сдвига |
| | D1 /100 |
-------w NNN |
|
| | D2 /100 |
-------w NNN |
|
| | D3 /100 |
-------w NNN |
|
| | C0 /100 |
-------w NNN data(1) |
  |
| | C1 /100 |
-------w NNN data(1) |
  |
| SHLD |
Двойной сдвиг влево Double Precision Shift Left |
| | 0F A4 |
-------- MRM data(1) |
Команды сдвига |
| | 0F A5 |
-------- MRM |
  |
| SHR |
Сдвиг вправо (беззнаковое деление на 2) Shift Right |
| | D0 /101 |
-------w NNN |
Команды сдвига |
| | D1 /101 |
-------w NNN |
|
| | D2 /101 |
-------w NNN |
|
| | D3 /101 |
-------w NNN |
|
| | C0 /101 |
-------w NNN data(1) |
  |
| | C1 /101 |
-------w NNN data(1) |
  |
| SHRD |
Двойной сдвиг вправо Double Precision Shift Right |
| | 0F AC |
-------- MRM data(1) |
Команды сдвига |
| | 0F AD |
-------- MRM |
  |
| SIDT |
Сохранение регистра дескрипторной таблицы прерываний
Store Interrupt Descriptor Table |
| |
0F 01 | /001 |
-------- NNN |
Привилегированные |
| SLDT |
Сохранение регистра локальной дескрипторной таблицы
Store Local Descriptor Table |
| |
0F 00 | /000 |
-------- NNN |
Привилегированные |
| SMSW |
Сохранение слова состояния машины
Store Machine Status Word |
| |
0F 01 | /100 |
-------- NNN |
Привилегированные |
| STC |
Установка флажка переноса Set Carry Flag |
| | F9 |
-------- |
Установка флажков |
| STD |
Установка флажка направления Set Direction Flag |
| | FD |
-------- |
Установка флажков |
| STI |
Установка флажка прерывания Set Interrupt Flag |
| | FB |
-------- |
Установка флажков |
| STOS |
Сохранение цепочечных данных Store String Data |
| | AA |
-------w |
Цепочечные команды |
| | AB |
-------w |
|
| STR |
Сохранение регистра задачи Store Task Register |
| |
0F 00 | /001 |
-------- NNN |
Привилегированные |
| SUB |
Вычитание Subtract |
| | 28 |
------dw MRM |
Основная арифметика |
| | 29 |
------dw MRM |
  |
| | 2A |
------dw MRM |
  |
| | 2B |
------dw MRM |
  |
| | 2C |
-------w data(1) |
  |
| | 2D |
-------w data(2/4) |
  |
| | 80 /101 |
------sw NNN data(1) |
  |
| | 81 /101 |
------sw NNN data(2/4) |
  |
| | 82 /101 |
------sw NNN data(1) |
  |
| | 83 /101 |
------sw NNN data(1) |
  |
 |
 |
 |
| TEST |
Логическое сравнение Logical Compare |
| | 84 |
-------w MRM |
Основная арифметика |
| | 85 |
-------w MRM |
  |
| | A8 |
-------w data(1) |
  |
| | A9 |
-------w data(2/4) |
  |
| | F6 /000 |
-------w NNN data(1) |
  |
| | F7 /000 |
-------w NNN data(2/4) |
  |
 |
 |
 |
| VERR |
Проверка сегмента на считывание Verify Segment for Reading |
| |
0F 00 | /100 |
-------- NNN |
Системные команды |
| VERW |
Проверка сегмента на запись Verify Segment for Writing |
| |
0F 00 | /101 |
-------- NNN |
Системные команды |
 |
 |
 |
| WAIT |
Ожидание Wait |
| | 9B |
-------- |
Системные команды |
| WBINVD |
Обратная запись и недостоверность кэш-памяти
Write-Back and invalidate cache |
| | 0F 09 |
-------- |
Системные команды |
 |
 |
 |
| XADD |
Обмен и сложение Exchange and Add |
| | 0F C0 |
-------w MRM |
Специальные команды |
| | 0F C1 |
-------w MRM |
  |
| XCHG |
Обмен данными - регистр/регистр или регистр/память
Exchange Data - Register/Register or Register/Memory |
| | 86 |
-------w MRM |
Пересылка данных |
| | 87 |
-------w MRM |
  |
| | 90 |
-----reg |
  |
| | 91 |
-----reg |
  |
| | 92 |
-----reg |
  |
| | 93 |
-----reg |
  |
| | 94 |
-----reg |
  |
| | 95 |
-----reg |
  |
| | 96 |
-----reg |
  |
| | 97 |
-----reg |
  |
| XLAT |
Перекодирование байта по таблице Translate by Table |
| | D7 |
-------- |
Специальные команды |
| XOR |
Логическое исключающее "ИЛИ" Logical Exclusive "OR" |
| | 30 |
------dw MRM |
Основная арифметика |
| | 31 |
------dw MRM |
  |
| | 32 |
------dw MRM |
  |
| | 33 |
------dw MRM |
  |
| | 34 |
-------w data(1) |
  |
| | 35 |
-------w data(2/4) |
  |
| | 80 /110 |
------sw NNN data(1) |
  |
| | 81 /110 |
------sw NNN data(2/4) |
  |
| | 82 /110 |
------sw NNN data(1) |
  |
| | 83 /110 |
------sw NNN data(1) |
  |
 |