Студопедия

КАТЕГОРИИ:


Архитектура-(3434)Астрономия-(809)Биология-(7483)Биотехнологии-(1457)Военное дело-(14632)Высокие технологии-(1363)География-(913)Геология-(1438)Государство-(451)Демография-(1065)Дом-(47672)Журналистика и СМИ-(912)Изобретательство-(14524)Иностранные языки-(4268)Информатика-(17799)Искусство-(1338)История-(13644)Компьютеры-(11121)Косметика-(55)Кулинария-(373)Культура-(8427)Лингвистика-(374)Литература-(1642)Маркетинг-(23702)Математика-(16968)Машиностроение-(1700)Медицина-(12668)Менеджмент-(24684)Механика-(15423)Науковедение-(506)Образование-(11852)Охрана труда-(3308)Педагогика-(5571)Полиграфия-(1312)Политика-(7869)Право-(5454)Приборостроение-(1369)Программирование-(2801)Производство-(97182)Промышленность-(8706)Психология-(18388)Религия-(3217)Связь-(10668)Сельское хозяйство-(299)Социология-(6455)Спорт-(42831)Строительство-(4793)Торговля-(5050)Транспорт-(2929)Туризм-(1568)Физика-(3942)Философия-(17015)Финансы-(26596)Химия-(22929)Экология-(12095)Экономика-(9961)Электроника-(8441)Электротехника-(4623)Энергетика-(12629)Юриспруденция-(1492)Ядерная техника-(1748)

Эти высказывания просто отражают два разных взгляда программиста на числа А и В

DATA

Сравнение знаковых и беззнаковых целых чисел

МЕХАНИЗМ ВЫПОЛНЕНИЯ

1. «Результат»:= оп1 – оп2;
{установились флаги}

«Результат» НИГДЕ НЕ СОХРАНЯЕТСЯ.

A db 00111011B; A = 59 или А = + 59

B db 10010010B; B= 146 или B = ― 110

Считаем А и В ЗНАКОВЫМИ.
Тогда А =+59 БОЛЬШЕ B = -110
и B = -110 МЕНЬШЕ А =+59

Считаем А и В БЕЗЗНАКОВЫМИ.
Тогда А =59 НИЖЕ, чем B = 146
и B = 146 ВЫШЕ, чем А =59.

Результаты «А больше, но ниже, чем В» и «В меньше, но выше, чем А» существуют одновременно и не противоречат друг другу. Им всем соответствует одна комбинация флагов, которая установилась после CMP AL, B.

Кодировка проверяемых отношений в мнемонике комады «jXX метка»

Буквенная кодировка Родитель (англ.) Смысл (Рус.) Тип операндов
E e Equal Равно Любые
Z z Zero Ноль Любые
N n Not Не Любые
G g Greater Больше Числа со знаком
L l Less Меньше Числа со знаком
A a Above Выше, в смысле “больше” Числа без знака
B b Below Ниже, в смысле “меньше” Числа без знака

 

Команды условных переходов, применяемые после команды «CMP операнд_1,операнд_2»

Мнемоника условного перехода Критерий перехода Значения флагов для перехода
je операнд_1 = операнд_2 ZF = 1
jne операнд_1<>операнд_2 ZF = 0
jl / jnge операнд_1 < операнд_2 SF <> OF
jle / jng операнд_1 <= операнд_2 SF <> OF or ZF = 1
jg / jnle операнд_1 > операнд_2 SF = OF and ZF = 0
jge / jnl операнд_1 => операнд_2 SF = OF
jb / jnae операнд_1 < операнд_2 CF = 1
jbe /jna операнд_1 <= операнд_2 CF = 1 or ZF=1
ja / jnbe операнд_1 > операнд_2 CF = 0 and ZF = 0
jae / jnb операнд_1 => операнд_2 CF = 0

 

Команды условных переходов
по значениям флагов

Название флага Команда Переходим, если:
Флаг переноса CF jc CF = 1
Флаг четности PF jp PF = 1
Флаг нуля ZF jz ZF = 1
Флаг знака SF js SF = 1
Флаг переполнения OF jo OF = 1
Флаг переноса CF jnc CF = 0
Флаг четности PF jnp PF = 0
Флаг нуля ZF jnz ZF = 0
Флаг знака SF jns SF = 0
Флаг переполнения OF jno OF = 0

 

Команды условного перехода и регистр ECX/CX

Регистр ECX/CX используется КАК СЧЕТЧИК в циклах.
Чтобы удобнее было обработать ситуацию «нулевое число повторений цикла», в состав системы команд процессора введены специальные команды:

JCXZ метка (J ump if CX is Z ero) – переход при CX=0;

 

JECXZ метка (J ump if ECX is Z ero) - переход при ECX=0.

Эти команды выполняют ТОЛЬКО КОРОТКИЕ ПЕРЕХОДЫ
на дистанцию -128 … +127 байт максимум
.

МЕЖСЕГМЕНТНЫЙ УСЛОВНЫЙ ПЕРЕХОД

Пусть надо передать управление из сегмента 1:

Если условие ХХ выполняется, то на метку Target1 в сегменте 2,
а если НЕ выполняется, то на метку Target2 в сегменте 3.

 

ОРГАНИЗАЦИЯ ЦИКЛОВ И управление ими

Программирование цикла со счетчиком
(«for») с помощью переходов

В качестве счетчика повторений цикла можно взять переменную или любой регистр общего назначения. Ну, возьмем CX – почему бы и нет?
Используем обратный счет до нуля.

Mov CX, 20; задаем число повторений

Cycle:

<== предыдущая лекция | следующая лекция ==>
Что может быть источником условия | Механизм выполнения. Команды управления циклом
Поделиться с друзьями:


Дата добавления: 2014-01-07; Просмотров: 241; Нарушение авторских прав?; Мы поможем в написании вашей работы!


Нам важно ваше мнение! Был ли полезен опубликованный материал? Да | Нет



studopedia.su - Студопедия (2013 - 2024) год. Все материалы представленные на сайте исключительно с целью ознакомления читателями и не преследуют коммерческих целей или нарушение авторских прав! Последнее добавление




Генерация страницы за: 0.01 сек.