Команды условного перехода
Code2 ends
Mov ax,bx
M1 label far
Code2 segment
Code1 ends
Lea bx,adr
Code1 segment
Data ends
Adr dd m1
Data segment
Косвенный регистровый межсегментный переход
Code2 ends
Mov ax,bx
…………..
Адрес перехода указывается косвенно в регистре. Применяется, когда адрес перехода меняется во время выполнения прграммы.
……………………
jmp dword ptr [bx]
………………….…
…
…………..
Передача управления возможна в пределах одного сегмента .
Для принятия решения о том, куда будет передано управление, должно быть сформировано условие.
Способы формирования условия:
1) Любая команда, изменяющая состояние арифметических флагов.
2) Команда сравнения: cmp опер.1,опер.2 (из опер.1 вычитается опер.2, а результат никуда не записывается, воздействует только на флаги)
3) Состояние регистра cx/ecx
Операнды Команда
Условие
Состояние флага
любые
je
=
zF=1
jne
≠
zF=0
со знаком
jl
<
SF#OF
jle
<=
SF#OFor ZF=1
jg
>
SF=OF and ZF=0
jge
>=
SF=OF
без знака
jb
<
CF=1
jbe
<=
CF=1 or ZF=1
ja
>
CF=0 and ZF=0
jae
>=
CF=0
Пример:
Дата добавления: 2013-12-12 ; Просмотров: 321 ; Нарушение авторских прав? ; Мы поможем в написании вашей работы!
Нам важно ваше мнение! Был ли полезен опубликованный материал? Да | Нет