Команды 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 (есть знак)