Список инструкций микропроцессора 8086

Небольшой отрывок из книги.
Лямин Л.В. Макроассемблер MASM. Справочник - М.: Радио и связь, 1994

Специально перепечатала, т.к. иногда бывает полезно, а носить с собой постоянно книгу - не удобно.

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

 

Используемая терминология

accum Один из аккумуляторов: AX или AL
reg Один из регистров с размерностью байта или слова. По байтам: AL,AH,BL,BH,CL,CH,DL,DH. По словам: AX,BX,CX,DX,SI,DI,BP,SP.
segreg Один из сегментных регистров: CS,DS,SS,ES.
r/m Один из общих операндов: регистр, адрес памяти, индексный операнд, базовый операнд, базово-индексный операнд.
immed 8- или 16-битовое непосредственное значение: константа или символьное имя.
mem Один из операндов в памяти: метка, переменная, символьное имя.
label Метка инструкции
src Источник в строковых операциях
dest Адресат в строковых операциях