Команды Jcc
Рубрика: Архитектура PC
(Команды CPU)
1785
Опубликовано: 05.05.2017
Команды J<cc> - это набор команд условного перехода. То есть команд, выполняющих переход по адресу при соблюдении каких-либо условий. Синтаксис у этих команд одинаковый - первая буква команды это всегда J, а за ней указывается мнемоническое обозначение условия перехода. Например JZ, JC, JNZ, JNE и т.п.
Команды J<cc>
Синтаксис: | J<cc> op1 |
Операнды: | op1 - i8, i16, i32 |
Назначение: | Условный переход |
Процессор: | 8086+ |
Флаги: | Не изменяются |
Комментарий: | Команды условного перехода проверяют состояние регистра флагов и, в зависимости от заданного условия (cc) производит передачу управления по адресу, заданному операндом команды. Все условия перечислены в таблице ниже. |
Ограничения: | Нельзя производить дальние межсегментные переходы |
Примеры: |
cmp ax,3 jbe l1 |
Обозначение условия |
Значение флагов |
Описание условия |
A NBE |
CF = 0 и ZF = 0 | Above (беззнаковое больше) Not Below or Equal (беззнаковое больше) |
AE NB NC |
CF = 0 | Above or Equal (беззнаковое больше или равно) Not Below (беззнаковое больше или равно) Not Carry (нет переноса) |
B NAE C |
CF = 1 | Below (беззнаковое меньше) Not Above or Equal (беззнаковое меньше) Carry (перенос) |
BE NA |
CF = 1 или ZF = 1 | Below or Equal (беззнаковое меньше или равно) Not Above (беззнаковое меньше или равно) |
E Z |
ZF = 1 | Equal (равно) Zero (ноль) |
G NLE |
ZF = 0 и SF = OF | Great (знаковое больше) Not Less or Equal (знаковое больше) |
GE NL |
SF = OF | Great or Equal (знаковое больше или равно) Not Less (знаковое больше или равно) |
L NGE |
SF <> OF | Less (знаковое меньше) Not Great or Equal (знаковое меньше) |
LE NG |
ZF = 1 или SF <> OF | Less or Equal (знаковое меньше или равно) Not Great (знаковое меньше или равно) |
NE NZ |
ZF = 0 | Not Equal (не равно) Not Zero (не ноль) |
NO | OF = 0 | No Overflow (нет переполнения) |
O | OF = 1 | Overflow (переполнение) |
NP PO |
PF = 0 | No Parity (нет чётности) Parity Odd (нечётное) |
P PE |
PF = 1 | Parity (чётность) Parity Even (чётное) |
NS | SF = 0 | No Sign (нет знака) |
S | SF = 1 | Sign (есть знак) |
Комментарии (0)