Скачиваний:
23
Добавлен:
11.05.2015
Размер:
998.91 Кб
Скачать

Iret, iretd

Возврат из прерывания. Последовательность операций соответствует командам:

POP IP ; восстанавливает IP (EIP);

POP CS ; восстанавливает CS;

POPF ; восстанавливает слово флагов.

RET, RET i16

Возврата из подпрограммы (процедуры). Если указан операнд i16, после возврата будет скорректирован SP=SP+i16 (ESP=ESP+i16).

Ниже перечислены команды условного перехода.

Jxx метка

Набор команд, каждая из которых выполняет переход (типа short или near), если удовлетворяется соответствующее условие xx.

Условием является состояние флагов в регистре флагов. В справочнике приведена таблица состояний проверяемых флагов, условий перехода и наименований команды.

Например, ситуации ZF=1 (результат последней операции = 0) соответствует команда перехода с условием Z или E: JNZ метка.

LOOP метка

Вычитает из CX (ECX) 1. Если CX (ECX) ≠ 0, выполняется переход на заданную метку.

9.3. Краткий список команд с используемыми операндами

9.3.1. Условные обозначения:

accum

аккумулятор AL или AX;

reg

один из регистров данных: AX,AL, AH,BX,BL,BH,CX,CL,CH,DX,DL или DH;

segreg

один из регистров сегмента: CS,DS,SS или ES

r/m

один из общих операндов:

регистр,

адрес памяти,

индексный операнд,

базированный операнд,

базо-индексный операнд;

immed

8- или 16-битовое значение: константа или число;

mem

один из операндов памяти:

метка,

переменная,

символ;

label

метка инструкции,

src

источник в операциях со строками,

dest

приемник в операциях со строками.

9.3.2. Инструкции пересылки данных

Код оп

Операнды

Функция

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

пересылка: операнд в регистр сегмента

PUSH

r/m

запоминание в стеке 16-битового операнда

PUSH

reg

запоминание в стеке 16-битового регистра

PUSH

segreg

запоминание в стеке регистра сегмента

PUSHF

запоминание в стеке флагов

POP

r/m

извлечение из стека 16-битового операнда

POP

reg

извлечение из стека 16-битового регистра

POP

segreg

извлечение из стека регистра сегмента

POPF

извлечение из стека флагов

XCHG

accum,reg

обмен аккумулятора с регистром

XCHG

r/m,reg

обмен операнда с регистром

XCHG

reg,accum

обмен регистра с аккумулятором

XCHG

reg,r/m

обмен регистра с операндом

XLAT

mem

перекодировка байта

LEA

r/m

загрузка исполнительного адреса

LDS

r/m

загрузка операнда с DS

LES

r/m

загрузка операнда с ES

LAHF

загрузка флагов в AH

SAHF

запись AH в регистр флагов

IN

accum,immed

ввод из порта(8-битовый непоср.)

IN

accum,DX

ввод из порта, заданного в DX

OUT

immed,accum

вывод в порт(8-битовый непоср.)

OUT

DX,accum

вывод в порт, заданный в DX

Соседние файлы в папке Введение в вычислительную технику.