Команда не изменяет значений флагов.
Jxx операнд условный переход 8086
Команды выполняют переход, если выполняется соответственное условие.
Процессоры 8086-80286 поддерживают только короткие переходы. Процессоры семейства IA-32 поддерживают короткие и ближние переходы.
Правила для операнда — как в команде JMP.
Команда не изменяет значений флагов.
Таблица 7.1. Мнемоники условий в условных командах
xx |
Реальное условие |
Интерпретация для |
AE NB NC |
CF=0 |
выше или равно не ниже нет переноса |
B NAE C |
CF=1 |
ниже не выше и не равно перенос |
NO |
OF=0 |
нет переполнения |
O |
OF=1 |
переполнение |
NS |
SF=0 |
нет знака, положительное |
S |
SF=1 |
есть знак, отрицательное |
NP PO |
PF=0 |
нет чётности |
P PE |
PF=1 |
есть чётность |
NE NZ |
ZF=0 |
не равно не ноль |
E Z |
ZF=1 |
равно ноль |
A NBE |
CF=0 & ZF=0 |
выше не ниже и не равно |
BE NA |
CF=1 | ZF=1 |
ниже или равно не выше |
G NLE |
ZF=0 & SF=OF |
больше не меньше и не равно |
GE NL |
SF=OF |
больше или равно не меньше |
L NGE |
SF¹OF |
меньше не больше и не равно |
LE NG |
ZF=1 | SF¹OF |
меньше или равно не больше |
JCXZ операнд переход, если CX=0 8086
JECXZ операнд переход, если ECX=0 80386
Выполняет переход при указанном условии.
Процессоры 8086-80286 поддерживают только короткие переходы. Процессоры семейства IA-32 поддерживают короткие и ближние переходы.
Команды не изменяют значений флагов.
LOOP операнд цикл 8086
Уменьшает на единицу значение регистра CX в 16-разрядном или ECX в 32-разрядном режиме и, если значение в данном регистре не равно нулю, выполняет короткий переход по адресу, заданному операндом.
Примечание. Команда
LOOP label
эквивалентна паре команд
DEC ECX
JNZ label
но короче пары этих команд на один байт, работает быстрее и не изменяет значений флагов.
LOOPE адрес цикл, пока равно 8086
LOOPZ адрес цикл, пока ноль 8086
LOOPNE адрес цикл, пока не равно 8086
LOOPNZ адрес цикл, пока не ноль 8086
Все четыре команды уменьшают значение регистра CX или ECX на один, после чего выполняют короткий переход по указанному адресу, если значение CX или ECX не равно нулю и, кроме того, выполняется соответствующее условие.
LOOPE
и LOOPZ
— две мнемоники одной команды, LOOPNE
и LOOPNZ
—
две мнемоники другой команды.
Команды не изменяют флагов.
CALL адрес вызов процедуры 8086
Сохраняет текущий адрес в стеке и передаёт управление по адресу, указанному в операнде.
Допустимая адресация:
— непосредственная,
— регистровая,
— косвенная в любой своей разновидности.
Если в качестве адреса перехода указано только смещение, считается, что адрес перехода расположен в том же сегменте, что и команда CALL. При этом происходит ближний вызов процедуры. А именно: процессор помещает в стек значение регистра IP или EIP, соответствующее следующей за CALL команде, и загружает в счётчик команд указанный в операнде адрес, осуществляя тем самым передачу управления.
Уважаемый посетитель!
Чтобы распечатать файл, скачайте его (в формате Word).
Ссылка на скачивание - внизу страницы.