Студопедия — Команды сложения двоичных и десятичных чисел. Установка флагов командами сложения
Студопедия Главная Случайная страница Обратная связь

Разделы: Автомобили Астрономия Биология География Дом и сад Другие языки Другое Информатика История Культура Литература Логика Математика Медицина Металлургия Механика Образование Охрана труда Педагогика Политика Право Психология Религия Риторика Социология Спорт Строительство Технология Туризм Физика Философия Финансы Химия Черчение Экология Экономика Электроника

Команды сложения двоичных и десятичных чисел. Установка флагов командами сложения






Кроме уже рассмотренной команды INC сложение осуществляют команды

ADD операнд1, операнд2 – (операнд1=операнд1+операнд2)

ADD приемник, источник– (приемник = приемник + источник)

ADC операнд1, операнд2 – (операнд1=операнд1+операнд2 + значение CF)

ADC приемник, источник – (приемник = приемник + источник + перенос)

Команды ADD и ADC могут воздействовать на 6 флагов:

- флаг переноса CF – устанавливается в 1, если результат сложения не помещается в операнде-приемнике, и противном случае CF=0;

- флаг четности PF=1, если результат имеет четное число битов со значением 1, и противном случае PF=0;

- вспомогательный флаг переноса AF=1, если результат сложения десятичных чисел требует коррекции, в противном случае он равен 0;

- флаг нуля ZF=1, если результат сложения равен 0;

- флаг знака SF=1, если сумма отрицательна (старший бит числа со знаком равен 1), в противном случае SF=0;

- флаг переполнения OF=1, если сложение чисел одного знака приводит к результату, который превышает диапазон допустимых значений приемника в обратном коде, а сам приемник при этом меняет знак.

52. Команда сравнения: правила установки флагов.

Формат команды CMP: CMP приемник, источник

CMP операнд1, операнд2

Эта команда осуществляет, по сути, вычитание операнд1 - операнд2 или приемник - источник, однако результат никуда не записывает, а только устанавливает флаги в соответствие с нижеприведенной таблицей.

В этой таблице приняты следующие обозначения:

- “H” означает, что ‘не имеет значения” или иначе, на этот флаг операция не влияет;

- 0/1 означает, что флаг устанавливается или в 1 или в 0 в зависимости от значений операндов (отрицательные или положительные или разнознаковые операнды сравниваются).

 

 

53. Команды условного перехода: синтаксис команд.

В этой таблице отражается действие команд условного перехода по значениям анализируемых этими командами флагов:

 

В приведенной таблице, по сути, присутствуют 3 группы команд условного перехода, которые названы “любые”, “без знака” и “со знаком”. Беззнаковое число подразумевает, что все его биты – биты данных. Знаковые числа подразумевают, что старший разряд (первый слева) соответствует знаку (значение бита 0 соответствует знаку ‘+’, а значение 1 – знаку ‘-‘). Предположим, CL содержит 11000110, а DL –00101100. Команда CMP CL,DL сравнивает содержимое регистров. Если интерпретировать содержимое регистров как беззнаковые числа, то значение в CL больше, а если в регистрах числа со знаком, то DL больше, поскольку как число со знаком значение в CL является отрицательным.

В следующей таблице приводятся специальные инструкции условного перехода.

 

 

57. Команда безусловного перехода. Какие модификаторы, и в каких случаях используются в командах безусловного перехода?

Безусловный переход в программе на Ассемблере производится по команде JMP. Полный формат команды следующий:

JMP [модификатор] адрес_перехода.

Нужно отметить одну особенность транслятора Ассемблера – он является однопроходным, иными словами, машинный код программы получается за один просмотр мнемокоманд от начала до конца. В связи с этим обстоятельством, если безусловный переход должен происходить на адрес до команды JMP, то транслятор может легко вычислить смещение. Если же переход короткий, но на метку после команды JMP, то транслятору нужно подсказать, что он должен сформировать, например, команду безусловного короткого перехода. С этой целью в команде JMP используется модификатор SHORT PTR (полностью - SHORT POINTER или короткий указатель).

В командах косвенного внутрисегментного перехода рекомендуется применять модификатор NEAR, т.к. при косвенном переходе не всегда транслятору удается определить, находится адрес перехода в текущем сегменте кода или нет.

В общем случае можно сказать, что модификаторы SHORT PTR, NEAR PTR и WORD PTR применяют при организации внутрисегментных переходов, а FAR PTR и DWORD PTR – при межсегментных переходах.

 

 







Дата добавления: 2015-04-16; просмотров: 407. Нарушение авторских прав; Мы поможем в написании вашей работы!



Расчетные и графические задания Равновесный объем - это объем, определяемый равенством спроса и предложения...

Кардиналистский и ординалистский подходы Кардиналистский (количественный подход) к анализу полезности основан на представлении о возможности измерения различных благ в условных единицах полезности...

Обзор компонентов Multisim Компоненты – это основа любой схемы, это все элементы, из которых она состоит. Multisim оперирует с двумя категориями...

Композиция из абстрактных геометрических фигур Данная композиция состоит из линий, штриховки, абстрактных геометрических форм...

Трамадол (Маброн, Плазадол, Трамал, Трамалин) Групповая принадлежность · Наркотический анальгетик со смешанным механизмом действия, агонист опиоидных рецепторов...

Мелоксикам (Мовалис) Групповая принадлежность · Нестероидное противовоспалительное средство, преимущественно селективный обратимый ингибитор циклооксигеназы (ЦОГ-2)...

Менадиона натрия бисульфит (Викасол) Групповая принадлежность •Синтетический аналог витамина K, жирорастворимый, коагулянт...

ФАКТОРЫ, ВЛИЯЮЩИЕ НА ИЗНОС ДЕТАЛЕЙ, И МЕТОДЫ СНИЖЕНИИ СКОРОСТИ ИЗНАШИВАНИЯ Кроме названных причин разрушений и износов, знание которых можно использовать в системе технического обслуживания и ремонта машин для повышения их долговечности, немаловажное значение имеют знания о причинах разрушения деталей в результате старения...

Различие эмпиризма и рационализма Родоначальником эмпиризма стал английский философ Ф. Бэкон. Основной тезис эмпиризма гласит: в разуме нет ничего такого...

Индекс гингивита (PMA) (Schour, Massler, 1948) Для оценки тяжести гингивита (а в последующем и ре­гистрации динамики процесса) используют папиллярно-маргинально-альвеолярный индекс (РМА)...

Studopedia.info - Студопедия - 2014-2024 год . (0.01 сек.) русская версия | украинская версия