- •3.1 Представление данных в алгоритме.
- •3.2 Представление данных в программе
- •3.3 Представление данных в цпос
- •3.5. Форматы данных
- •3.7.3. Представление вещественных чисел
- •3. 7. 4. Шестнадцатеричный эквивалент представления данных
- •3. 7. 5. Целочисленная и дробная арифметики
- •3.7.6. Коды чисел
- •Прямой код
- •Дополнительный код
- •Двойное слово
- •Msp lsp
- •Ext msp lsp
- •3. 7.7. Представление данных
- •Сложение и вычитание
- •Умножение
- •Замечание
- •3.7.10. Преобразование форматов в цпос с фиксированной точкой
- •3.7.11. Диапазон, динамический диапазон
- •3.7.12. Увеличение динамического диапазона
- •3. 8. 2. Форма представления данных с плавающей точкой
- •3.8.4. Преобразование форматов в цпос с плавающей точкой
- •3.8.5. Нормализованные числа j
- •3,8.6. Специально данные
- •3.8.7. Арифметические операции над данными с плавающей точкой
- •3.8.8. Диапазон, динамический диапазон и точность представления чисел с плавающей точкой
- •3.9. Сравнение цпос с фиксированной и плавающей точками
- •3.10. Организация обработки данных с плавающей точкой в цпос с фт
3.8.4. Преобразование форматов в цпос с плавающей точкой
Преобразования форматов SP, SEP и DP выполняется в специальном устройстве — преобразователе форматов, предусмотренном в аппаратном обеспечении ЦПОС. При этом соблюдаются следующие общие правила:
О целые значения смещенного порядка выравниваются по правому краю; "лишние" старшие разряды обнуляются;
и значения дробной части мантиссы выравниваются по левому краю (в слове SEP после явной \); "лишние" младшие разряды обнуляются.
Так как ЦПОС с ПТ поддерживают целочисленную арифметику с ФТ, то, кроме преобразований форматов вещественных данных, представленных в форме с ПТ, существует возможность взаимного преобразования форматов данных, представленных в формах с ФТ и ПТ. В зависимости от архитектуры преобразователя форматов, вариации таких преобразований разнообразны, однако их принцип будет ясен из следующих двух примеров.
Пример I. Преобразование вещественного числа с ПТ в целое число с ФТ. Числа с ПТ и ФТ имеют одинаковый формат SP.
Сначала в преобразователе форматов производится проверка на особые случаи (см. разд. 3-.8.6). Если число с ПТ является нормализованным и не фиксируется особый случай, преобразование форматов выполняется в расши-
ренном формате SEP, где вещественное число с ПТ округляется до целого! соответствии с установленным режимом округления (см. главу 4) и затеЛ представляется в формате SP в форме с ФТ с выравниванием по праве краю в дополнительном коде. Если имеет место особый случай, он отоби жается состоянием соответствующих битов в регистре состояния и обраба-1 тывается в установленном порядке. В частности, если значение числа с П1 выходит за границы диапазона представления целых чисел в форме с Фш т. е. имеет место особый случай переполнения, целое число округляется! правилам арифметики насыщения чисел с ФТ (см. главу 4). 1
Пример 2. Преобразование целых чисел в форме с ФТ к форме с ПТ. Дай ные с ФТ имеют формат SP, а с ПТ — формат SEP. 1
В преобразователе форматов выполняется аналогичная проверка на особа! случаи, после чего целое число в форме с ФТ переводится из дополните™ ного кода в прямой и сохраняется в форме с ПТ в формате SEP. В отличш от предыдущего примера, особого случая "переполнение" здесь произой! не может, т. к. диапазон представления чисел с ПТ существенно шире, чш с ФТ (см. разд. 3.8.8). |
3.8.5. Нормализованные числа j
Используя параметры табл. 3.9, запишем максимальные и минимальна числа в форме с ПТ (3.3) для формата "слово" SP (табл. 3.10). Аналогиям можно получить значения для форматов "двойное слово" DP и "расиш ренное слово" SEP. Нормализованные числа (кроме нуля) находятся в пр| делах между значениями max и min. ч
Таблица 3.10. Максимальные и минимальные числа с Л|
Число Двоичное число в формате SP Десятичный 1 СПТ Знак Порядок Мантисса эквивалент | S £(ю) е(10) е(2) 1,f(2) 1 Положительные числа 1 Мах 0 127 254 11. ..10 1,11.. .1 (2 - 2~гз) • 2127 = 3,4 х 1 х 1038 1 Min 0 -126 1 00. ..01 1,00. ..0 1- 2-126=1,18х1(Г38 J Отрицательные числа 1 Min 1 127 254 111. ..10 1.11...1 -(2-2-23)-2127=- 1 -3,4-Ю38 J Мах 1 -126 1 00. ..01 1,00. ..0 -1 • 2~126 = -1,18х 1 хЮ-38 1
|
Таблица 3.10 (окончание)
Число Двоичное число в формате SP Десятичный сПТ Знак Порядок Мантисса эквивалент S Е(ю) е(10) е(2) 1,'(г) Отрицательные числа Длина 1 - - 8 24: -Дробная — 23 Целая — 1 (неявная)
|