Команды процессора x86
Арифметические операции
AAA - ASCII-коррекция при сложении
AAD - ASCII-коррекция при делении
AAM - ASCII-коррекция при умножении
AAS - ASCII-коррекция при вычитании
ADC - Сложение с переносом
ADD - Сложение
CBW - Преобразование байта в слово
CMP - Сравнение
CWD - Преобразование слова в двойное слово
DAA - Десятичная коррекция при сложении
DAS - десятичная коррекция при вычитании
DEC - Декремент
DIV - Деление без учета знака
IDIV - Деление с учетом знака
IMUL - Умножение с учетом знака
INC - Инкремент
MUL - Умножение без учета знака
NEG - Получение дополнительного кода
SBB - Вычитание с заёмом
SUB – Вычитание
Команды пересылки данных
IN - Ввод байта или слова
LAHF - Загрузка AH из регистра флагов
LDS - Загрузка указателя с использованием DS
LEA - Загрузка исполнительного адреса
LES - Загрузка указателя с использованием ES
MOV - Пересылка (байта или слова)
OUT - Загрузка в порт
POP - Выборка слова из стека
POPF - Пересылка слова из стека в регистр FLAGS
PUSH - Загрузка слова в стек
PUSHF - Загрузка содержимого регистра FLAGS в стек
SAHF - Загрузка регистра AH в регистр флагов
XCHG - Обмен значениями
XLAT - Кодирование AL по таблице
Логические операции
AND - Логическое умножение
NOT - Логическое отрицание
OR - Логическое сложение
RCL - Циклический сдвиг влево через CF
RCR - Циклический сдвиг вправо через CF
ROL - Циклический сдвиг влево
ROR - Циклический сдвиг вправо
SAL - Арифметический сдвиг влево
SAR - Арифметический сдвиг вправо
SHL - Логический сдвиг влево
SHR - Логический сдвиг вправо
TEST - Тест
XOR - Исключающее ИЛИ
Работа с блоком данных
CMPS - Сравнение строк
CMPSB - Сравнение строк из байтов
CMPSW - Сравнение строк из слов
LODS - Загрузка строки
LODSB - Загрузка строки из байтов
LODSW - Загрузка строки из слов
MOVS - Пересылка строки
MOVSB - Пересылка строки из байтов
MOVSW - Пересылка строки из слов
REP - Повтор
REPE - Повторять пока равно
REPNE - Повторять пока не равно
REPNZ - Повторять пока не ноль
SCAS - Просмотр строки
SCASB - Просмотр строки из байтов
SCASW - Просмотр строки из слов
STOS - Запись в строку
STOSB - Запись в строку из байтов
STOSW - Запись в строку из слов
Команды передачи управления
CALL - Вызов подпрограммы
JMP - Безусловный переход
RET - Возврат из подпрограммы
Команды условного перехода
JA - Переход если выше
JAE - Переход если выше или равно
JB - Переход если ниже
JBE - Переход если ниже или равно
JC - Переход если перенос
JCXZ - Переход если CX = 0
JE - Переход если равно
JG - Переход если больше
JGE - Переход если больше или равно
JL - Переход если меньше
JLE - Переход если меньше или равно
JNA - Переход если не выше
JNAE - Переход если не выше и не равно
JNB - Переход если не ниже
JNBE - Переход если не ниже и не равно
JNC - Переход если нет переноса
JNE - Переход если не равно
JNG - Переход если не больше
JNGE - Переход если не больше и не равно
JNL - Переход если не меньше
JNLE - Переход если не меньше и не равно
JNO - Переход если нет переполнения
JNP - Переход если нечетно
JNS - Переход если положительный результат
JNZ - Переход если не ноль
JO - Переход если есть переполнение
JP - Переход если четно
JPE - Переход если четно
JPO - Переход если нечетно
JS - Переход если отрицательный результат
JZ - Переход если ноль
LOOP - Переход по счетчику
LOOPE - Переход пока равно
LOOPNE - Переход пока не равно
LOOPNZ - Переход пока не ноль
LOOPZ - Переход пока ноль
Команды прерывания
INT - Прерывание
INTO - Прерывание по переполнению
IRET - Возврат после обработки прерывания
Управление состоянием процессора
CLC - Сброс признака переноса
CLD - Сброс признака направления
CLI - Сброс признака разрешения прерывания
CMC - Инвертирование признака переноса
ESC - Выборка кода операции и операнда
HLT - Остановка
LOCK - Блокирование шины BUS
NOP - Нет операции
STC - Установка признака переноса
STD - Установка признака направления
STI - Установка признака разрешения прерывания
WAIT – Ожидание