Добавил:
Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
Лекции по СиФО часть 5.1.doc
Скачиваний:
55
Добавлен:
15.09.2014
Размер:
771.07 Кб
Скачать

5.7.3. Команды арифметических операций

В большинстве вычислительных устройств отработка арифметических и логических команд состоит из следующих действий.

В начале из ОП выбирается очередная команда и в зависимости от кода операции и использованного формата формируются исполнительные адреса. Из регистровой или оперативной памяти в АЛУ читаются операнды, после чего выполняется их преобразование. Далее осуществляется пересылка результатов обработки данных на место одного из исходных значений. По состоянию выходов АЛУ формирует двоичные признаки, которые определенное время сохраняются в регистре состояния. Как правило, время хранения содержимого RG F определяется конечным моментом исполнения следующей команды.

Команды арифметических операций имеют различное время реализации преобразований, задаваемых полем КОП. Это время зависит от типа и формата команды, а также от длины обрабатываемых слов. Наиболее просто в компьютере выполняются преобразования данных, представленных в формате с фиксированной запятой или двоичных кодов, интерпретируемых как целые двоичные числа. В таком формате представляются адреса, индексные константы, содержимое программного счетчика, некоторые двоичные данные. Как правило, в набор команд для обработки целых двоичных чисел включают команды формата RR и RX.

Для обработки чисел, представленных в форме с плавающей запятой или в так называемом полулогарифмическом масштабе, используются также команды формата RR и RX. Однако в данном случае поле R регистра команды указывает не на РОН процессора, а на 64-разрядные регистры с плавающей запятой (РПЗ).

Для сложения и вычитания операндов, расположенных в РПЗ, используют два типа команд:

1) с нормализацией результата;

2) без нормализации результата.

Полученная в ходе данного преобразования сумма или разность сохраняется по адресу 1-го операнда.

Чаще всего в основной памяти или в РПЗ характеристики и мантиссы чисел хранятся в прямом коде. Поэтому, если в ходе преобразования получен отрицательный результат, то он будет представлен в дополнительном коде, и перед размещением числа в памяти необходимо выполнить переход от дополнительного кода к прямому коду операнда.

Арифметические операции над двоично-десятичными числами выполняются под управлением команд, представленных в формате SS.

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

Под упакованным форматом понимают двоичные эквиваленты десятичных чисел, то есть числа в коде 1,2,4,8. Под распакованным - двоично-десятичные числа с избытком 6, то есть числа представленные в диапазоне: 616 – 1516. Использование избытка при данном способе кодирования обусловлено необходимостью формирования межтетрадных переносов, распространяющихся от младших к старшим разрядам при обработке чисел данного формата.

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