Сделать свой сайт бесплатно

Реклама

Создай свой сайт в 3 клика и начни зарабатывать уже сегодня.

@ADVMAKER@
52. Команды условных переходов.
Добавил: evmka 21 января 2012 06:04

52. Команды условных переходов.

Условный переход осуществляется, если выполняется определенное условие, заданное флагами процессора (кроме одной команды, которая проверяет CX на равенство нулю). Состояние флагов изменяется после выполнения арифметических, логических и некоторых других команд. Если условие не выполняется, то управление переходит к следующей команде. Существует много команд различных условных переходов.

Команды УП проверяют условие переходов:

1)        По состоянию флагов

2)        По результатам команд сравнения cmp (сравнение 2-х операндов)

3)        По состоянию регистров CX/ECX

КУП имеют вид: Jxx метка_перехода

Пример:

Флаг| Команда|Условие переходов

CF        JC             CF=1 (есть переполнение)

PF        JP             PF=1 (число единичных бит четное)

SF        JS             SF=1 (знак равен 1)

И т.д.

Команды сравнения

Cmp операнд_1, операнд_2

Выполняется команда sub (вычитание) и после осуществляется КУП:

Je-равно (опер_1=операнд_2; флаг zf=1)

Jl-меньше(о_1<o_2; sf<of)

Ja-больше (выше)

Jb-меньше (ниже) (o_1<o_2; cf=1)

И т.д.

Переход зависит от CX/ECX

СХ – регистр счетчик

Используется в циклах

Jcxz метка_перехода – переход осуществляется, если cx=0

Просмотры (384)  Комментарии (0)  Форум (51-64)
Зарегистрированный
Анонимно