Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
ТСвИС / арифметические операции и их реализация в ЭВМ.doc
Скачиваний:
178
Добавлен:
28.05.2015
Размер:
429.06 Кб
Скачать

Синтез операционных автоматов с общими микрооперациями

Для ОА с общими микрооперациями типична следующая форма преобразований:

Z:=g(f (h (X),Y)), (1)

где g- оператор сдвига; f- оператор, реализующий бинарные логические операции и сложение; h- оператор формирования обратных ( дополнительных) кодов; X, Y и Z- слова из множества слов В= {B1, B2,…, BN}, хранимых в памяти ОА, причем в качестве аргумента X или Y может использоваться константа. Преобразование (1) удобно задавать микрокомандами вида

nX, h, nY, f, g, nZ, (2)

где nX, nY, nZ- микрооперации, задающие слова X, Y,Z из множества слов В и константы X или Y; h, f и g. В данном классе ОА логические условия обычно представляются в виде (Z), где - булева функция, аргументами которой являются двоичные переменные словаZ. Структура ОА зависит в первую очередь от набора микроопераций и ЛУ, необходимого для эффективной реализации заданного списка операций. Указанный набор обычно определяется в процессе составления СФ- микропрограмм, микрокоманды которых представляются в виде (2). При этом набор микроопераций и ЛУ формируется по мере составления микропрограммы путем введения в него дополнительных микроопераций и ЛУ, необходимость в которых порождается либо стремлением эффективно запрограммировать очередное действие путем введения новой микрооперации или ЛУ, уменьшающих время выполнения алгоритма.

Набор микроопераций и ЛУ можно определять на основе Ф- микропрограмм, описывающих алгоритмы операций, выполнение которых возлагается на синтезируемый автомат. При этом микрооперации и микрокоманды Ф- микропрограммы должны быть преобразованы к виду, соответствующему (2), с учетом ограничений налагаемых структурой ОА на совместимость микроопераций.

Арифметика с плавающей запятой. Выполнение операций с плавающей запятой

Для научно технических расчетов необходимо представлять значения в широком диапазоне ( как целые так дробные ) и с достаточно большой точностью. Указанным требованиям отвечают числа с плавающей запятой :

1 2 m 1 2 p

+

-

Мантисса

+

-

Порядок


Рис.1.6.Формат представления данных с плавающей запятой

Число состоит из мантиссы (рис.1.6.), старший разряд которой определяет знак числа, и порядка со знаком. Значение мантиссы представляется двоичной дробью, т. е. запятая фиксируется перед старшим разрядом мантиссы, и порядок – целым числом ( обычно двоичным ). Порядок указывает действительное положение запятой в числе. Код ( 4 ) представляет значение в полулогарифмической форме : X = M * 2 p , где М и Р мантисса и двоичный порядок числа. Точность представления значения зависит от числа значащих цифр мантиссы.

Для повышения точности числа плавающей запятой представляются в нормализованной форме 0,5 < = М < 1 . Признаком нормализации числа является наличие единицы в старшем разряде мантиссе. В нормализованной форма могут быть записаны все числа из некоторого диапазона за исключением нуля. Нормализованные двоичные числа с плавающей запятой ( 4 ) представляют значения в диапазоне

0.5 * 2-Pmax < = l X l < = ( 1 -2m-1)2Pmax , (3)

где Pmax = 2p-1-1 – максимальное значение порядка с предельной относительной погрешностью

бX = (2-(m-1)2P) / ( 0.5 * 2P) = 2-m ( 4)

Отсюда видно, что диапазон значений зависит в основном от числа разрядов порядка, а точность – от числа разрядов мантиссы. Ненормализованные числа имеют погрешность, превышающую ( 4 ), но за счет потери значимости диапазон представляемых значений расширяется до нуля включительно.

С целью расширения диапазона представляемых значений при фиксированной длине ( m + p ) числа в качестве основания выбираются значение d = 2k (обычно k = 3 или 4 ). При этом порядок становится d – ичным и число представляет значение X = MdP . Нормализованная мантисса d – ичного числа с плавающей запятой имеет значение, лежащее в диапазоне 1/d < = M < 1. Признаком нормализации такого числа является наличие хотя бы одной единицы в k старших разрядах мантиссы. Переход от двоичного основания к основанию 2k увеличивает предельную относительную погрешность в 2k раз ( в 8 – 16 раз ), но диапазон представляемых значений расширяется в каждую сторону в ( ( 2k)2m-1-1)/(22(m-1)-1)=2(k-1) (2(m-1)-1) раз по сравнению с (4.1). Так, при m=7 и k=4 диапазон значений расширяется примерно в 1063 раз.

В ЦВМ третьего поколения числа с плавающей запятой имеют основание 16 и представляются в двух форматах: коротком и длинном (рис 3,б). часть числа, содержащая модуль и знак порядка, называется характеристикой. Указанные числа позволяют кодировать значения, лежащие в диапазоне 10-75<=lXl<=1075 с предельной относительной погрешностью, соответственно равной 1,5*10-6 и 10-16.

Над числами с плавающей запятой выполняются четыре арифметические операции: сложение, вычитание, умножение и деление. В некоторых ЦВМ этот список расширяется за счет введения операции вычитания модулей.