- •Министерство образования и науки украины
- •Содержание
- •Требования по оформлению контрольной работы
- •1 Вопросы для проверки уровня знаний основ компьютерной арифметики
- •2 Перечень технической литературы
- •3Cистемы счисления компьютерной арифметики
- •3.1 Представление чисел в позиционных системах счисления
- •3.2 Выбор системы счисления компьютера
- •4 Методы перевода чисел из одной позиционной системы счисления в другую
- •4.1 Методы перевода целых чисел
- •4.1.1 Метод подбора коэффициентов
- •4.1.2 Метод перевода делением на основание новой системы
- •4.1.3 Метод перевода чисел делением на основание в положительной степени
- •4.2 Перевод правильных дробей умножением на основание системы
- •4.3 Перевод неправильных дробей
- •4.4 Перевод чисел из 16-и и 8-ричных систем в двоичную и обратно
- •5 Форматы представления чисел в компьютере
- •5.1 Представления чисел с фиксированной запятой
- •5.2 Представление чисел в формате с плавающей запятой
- •5.3 Погрешности представления чисел
- •5.3.1 Абсолютная погрешность представления чисел
- •5.3.2 Относительная погрешность представления числа
- •6 Бинарная арифметика
- •6 1 Формальные правила двоичной арифметики
- •6.2 Представление отрицательных чисел
- •7 Коды бинарных чисел
- •7.1 Обратный код числа
- •7.1.1 Переход от обратного кода к прямому
- •7.2 Дополнительный код числа
- •7.3 Сложение чисел, представленных в форме с фиксированной запятой, на двоичном сумматоре прямого кода
- •8 Алгебраическое сложение бинарных чисел
- •8.1Cложение чисел на двоичном сумматоре дополнительного кода
- •8.2 Сложение чисел на сумматоре обратного кода
- •9 Модифицированные бинарные коды
- •9.2 Модифицированное сложение чисел в формате с плавающей точкой
- •10 Сложение чисел при разных значениях порядков
- •10.1 Алгоритм операции сложения в формате с плавающей точкой
- •11 Умножение двоичных чисел
- •11.1 Методы умножения бинарных чисел
- •11.2 Умножение чисел с фиксированной запятой на дспк
- •11.3 Умножение чисел с плавающей запятой
- •12 Умножение чисел на дсдк
- •12.1 Умножение чисел на дсдк при положительном множителе
- •12.2 Умножение чисел на дсдк при отрицательном множителе
- •13. Деление бинарных чисел
- •13.1 Метод деления бинарных чисел
- •13.1.1 Общий алгоритм деления чисел с восстановлением остатка
- •13.2 Деление чисел с фиксированной запятой с восстановлением остатка
- •14 Деление чисел с фиксированной запятой без восстановления остатка
- •14.1 Алгоритм деления без восстановления остатка
- •14.2 Деление чисел с плавающей запятой
- •15 Контрольное задание
9.2 Модифицированное сложение чисел в формате с плавающей точкой
Числа, представленные в формате с плавающей точкой (запятой) имеют две части – мантиссу и порядок. Поэтому, операция алгебраического сложения выполняется отдельно над мантиссой и над порядком. Следовательно, в цифровом автомате может быть два суммирующих устройства, для мантиссы и для порядка.
Для чисел с плавающей точкой справедливо условие нормализации: q-1< | mA| < 1 (9.1),
где q - основание системы счисления; mA - мантиссы числа.
Это нормализованное представление числа, и оно требует, чтобы в старшем разряде мантиссы двоичного числа стояла единица. Для двоичной системы это будет означать, что мантисса всегда находится в пределах: 0,5≤ |mA|< 1 (9.2)
При выполнении автоматом операций над числами, нормализуют как входные слагаемые, так и выходной результат.
Операция нормализации числа состоит из условия нормализации (9.1) и осуществляется методом сдвига мантиссы числа в ту или иную сторону. Сдвиги могут производиться влево или вправо в пределах разрядной сетки машины по правилам представленных моделью таблицы 9.1.
Модифицированный сдвиг - операция над модифицированным изображением числа, выполняется по модели таблицы 9.2.
Величина зависит от кода. Для дополнительного кода ε = 0, для обратного кода = 1.
При сложении чисел, результат сложения может выйти из нормализации как справа уравнения (9.1) так и слева.
Обозначим через γ - признак нарушения нормализации числа справа, указывающий на необходимость сдвига числа вправо на один разряд для восстановления знака числа.
Признаком нарушения нормализации числа слева δ (когда результат по абсолютной величине оказывается меньше 1/q ) является наличие одинаковых комбинаций в разряде переполнения и старшем разряде цифровой части сумматора.
Итак, рассмотрим сложение чисел А = mApA и В = mBpB имеющих одинаковый порядок pA=pB Обе мантиссы удовлетворяют условию нормализации.
Сложение мантиссы осуществляют на сумматоре ДСДК или ДСОК по правилу сложения чисел аналогично в формате с фиксированной запятой. Если после сложения мантисса результата удовлетворяет условию нормализации (т.е. δ = 0, γ=0), то к этому результату приписывается порядок любого из операндов. В противном случае производится нормализация числа.
Пример1. Найти сумму чисел
А=0,1000*2-3 и В=-0,1011*2-3
Мантиссы и порядок обрабатываются на ДСДК.
Здесь Sg2&R1=11 т.е.δ =1, γ=0. Значить, необходим сдвиг мантиссы влево на 1разряд.
[m'c]=11,1010 Проверяем. Снова δ=1, γ=0. Значить, необходим еще сдвиг влево на 1 разряд.
[m"c]доп. 11, 0100 Проверяем. Все в порядке δ= 0, γ=0.
Одновременно со сдвигом нужна коррекция порядка на
–2(10)=1.010(2) (что равносильно прибавлению дополнительного кода 1.110).
тогда число равно:
10 Сложение чисел при разных значениях порядков
Для операции сложения чисел необходимым условием является сопоставление весов разрядов операндов друг другу. Поэтому, сначала нужно уровнять порядки, что повлечет за собой временное нарушение нормализации одного из слагаемых.
Выравнивание порядков означает, что порядок меньшего числа надо увеличить на величину ΔР=|ра – рв | , что означает сдвиг мантиссы меньшего числа вправо на количество разрядов, равное ΔР. Поэтому, цифровой автомат должен вначале распознать, какой порядок из двух чисел является меньшим. На это укажет знак ΔР . Если ра≥рв - знак положительный и наоборот, если знак отрицательный, то ра < рв. Эту операцию иногда выполняют путем сравнения чисел.