December 17 2017 15:28:55
Навигация
Авторизация
Логин

Пароль



Вы не зарегистрированы?
Нажмите здесь для регистрации .

Забыли пароль?
Запросите новый здесь.
беззнаковые операнды
ПРОЦЕССОРЫ ОБЩЕГО НАЗНАЧЕНИЯ И СИСТЕМЫ НА ИХ ОСНОВЕ

В подгруппу входят 16 команд, различающихся условием выполнения перехода ее (табл. 2.22). Соответствующие мнемокоды условий добавляются к букве J (JUMP), образуя мнемокод команды, например: J+O =JO- мнемокод команды условного перехода по переполнению. Условие определяется значением отдельных признаков или их комбинацией.

В качестве условия часто используется относительное значение двух операндов, определяемое с помощью команды сравнения СМР. Равенство операндов определяется значением признака нуля ZF после команды СМР: равно E/Z (результат равен 0); не равно NE/NZ (результат не равен 0). Если сравниваются беззнаковые операнды, то соотношение их значений (выше - ниже - равно) определяют условия:

•   ниже (не выше и не равно) (<) B/NAE;

•   не ниже (выше или равно) (>=) NB/AE;

•   ниже или равно (не выше) (<=) BE/NA;

•   не ниже и не равно (выше) (>) NBE/A.

Отметим, что команды JB/JNAE и JNB/JAE эквивалентны командам переходов по наличию переноса JC или отсутствию переноса JNC.

Таблица 2.21 Команды передачи управления и прерывания

Синтаксис команды Операция
JMP NEAR

JMP FAR
rel(8,16,32)
r/m(16,32)
ptr(16:16, 16:32)
m(16:16, 16:32)
EIP(IP) + rel ® EIP(IP)
E IP(IP) + r/m ® EIP(IP)
ptr16 ® CS, ptr(16,32) ® IP, EIP
m16 ® CS, m(16,32) ® IP, EIP
CALL NEAR

CALL FAR
rel(16,32)
r/m(16,32)
ptr(16:16, 16:32)
m(16:16, 16:32)
EIP(IP) ® стек, EIP(IP) + rel ® EIP(IP)
EIP(IP) ® стек, EIP(IP) + r/m ® EIP(IP)
CS,EIP(IP) ® стек, ptr(16,32) ® IP, EIP
CS,EIP(IP) ® стек, m16 ® CS, m(16,32) ® IP, EIP
RET NEAR
RET FAR
(im16)
(im16)
стек ® EIP(IP); (SP + im16 ® SP)
стек ® Е1Р(IР), CS;   (SP + im16 ® SP)
Jcc rel(8,16,32) EIP(IP) + rel -> EIP(IP), если (ее) = 1
JECXZ (JCXZ)
LOOP
LOOPE(Z)
LOOPNE(NZ)
rel8
rel8
rel8
rel8
ECX-1 ® ECX; EIP + rel8 ® EIP, если ECX = 0
ECX-1 ® ECX; EIP + rel8 ® EIP, если ЕСХ ¹ 0
ECX-1 ® ECX; EIP + rel8 ® EIP, если ЕСХ ¹ 0 или ZF=1 ECX-1 ® ECX; EIP + rel8 ® EIP, если ECX ¹ 0 или ZF=0
INT
INT3
INTO
UD2
im8 EFLAGS.CS.EIP ® стек, Ve ® CS, EIP
EFLAGS.CS.EIP ® стек, Ve(#3) ® CS, EIP
EFLAGS.CS.EIP ® стек, Ve(#4) ® CS, EIP, если OF=1
EFLAGS.CS.EIP ® стек, Ve(#7) ® CS, EIP

IRET стек ® EIP, CS, EFLAGS

Таблица 2.22 Виды условий при выполнении условных операций

Мнемокод Условие (сс=1) Мнемокод Условие (сс=1)
O Переполнение OF=1 NO Нет переполнения OF=0
B(NAE) Ниже (не выше и не равно) CF=1 NB (АЕ) Не ниже (выше или равно) CF=0
E(Z) Равно (нуль) ZF=1 NE(NZ) Не равно (не нуль) ZF=0
BE(NA) Ниже или равно (не выше)
CF Ú ZF = 1
NBE (А) Не ниже и не равно (выше)
CF Ú ZF = 0
S Отрицательный знак SF=1 NS Положительный знак SF=0
P(PE) Четность PF=1 NP (РО) Нечетность PF=0
L (NGE) Меньше (не больше и не равно) SFÅOF = 1 NL (GE) Не меньше (больше или равно) SF®OF = 0
LE (NG) Меньше или равно (не больше) (SFÅOF) Ú ZF = 1 LNE (G) Не меньше и не равно (больше) (SFÅOF) Ú ZF= 1

Если сравниваются операнды со знаком, то соотношение между ними (больше - меньше - равно) определяют условия:

•   меньше (не больше и не равно) (<) < L/NGE;

•   не меньше (больше или равно) (>=) NL/GE;

•   меньше или равно (не больше) (<=) LE/NG;

•   не меньше и не равно (больше) (>) NLE/G.

Комментарии
Нет комментариев.
Добавить комментарий
Пожалуйста, залогиньтесь для добавления комментария.
Рейтинги
Рейтинг доступен только для пользователей.

Пожалуйста, авторизуйтесьили зарегистрируйтесь для голосования.

Нет данных для оценки.

Время загрузки: 0.04 секунд 2,299,108 уникальных посетителей