Добавил:
Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
Скачиваний:
125
Добавлен:
02.05.2014
Размер:
107.52 Кб
Скачать

DL BL

1 1 1 1 1 1 1 1

1 1 1 1 1 1 1 1

0 1 0 1 1 1 1 1

0 0 0 0 0 1 0 1

DX

BL

1 1 1 1 0 0 0 0

0 0 0 0 0 1 0 1

0 1 0 1 1 1 1 1

1 1 1 1 1 0 1 1

0 1 0 1 1 1 1 0

DX AX

Рисунок 9.1. Наглядная интерпретация фрагмента программы деления двойного слова на 16

Процесс выполнения деления 2 неупакованных BCD-чисел может быть представлен в формате неупакованных BCD-чисел. Для этого перед операцией деления в регистре АХ получают 2 неупакованные цифры делимого (выполняет эту операцию программист удобным для него способом). Далее командой AAD преобразуется число в двоичное, которое затем является делимым в операции DIV. Причем в дальнейшей операции DIV двоичное число делится на неупакованную BCD-цифру, находящуюся в байтовом регистре или в байтовой ячейке памяти. Результат операции получается так, как описано 1-ой строкой таблицы. Понятно, что с применением этих команд можно выполнять очень простые операции деления, но команду AAD можно использовать и в контексте преобразования упакованного (или неупакованного) десятичного числа из диапазона 00-99 в двоичный эквивалент.

К группе арифметических команд относят команды расширения операнда, которые называются командами преобразования:

Рассмотрев арифметические операции можно сделать следующие выводы:

1) рассмотренная нами группа команд выполняет известные арифметические операции над целыми числами, для работы с вещественными числами применяют команды сопроцессора;

2) многие команды имеют только один операнд или не имеют операндов вообще, поскольку по умолчанию работают с определенными регистрами общего назначения;

3) арифметические операции чувствительны к размерности операндов, поэтому эту характеристику необходимо отслеживать программисту;

4) контроль за правильностью арифметических операций полностью лежит на программисте; программист должен отслеживать состояние арифметических флагов во время вычислительного процесса и принимать правильные решения по дальнейшей обработке;

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

Соседние файлы в папке Лекции по ассемблеру