- •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.7.3. Представление вещественных чисел
Представление дробных чисел в форме с ФТ в форматах “слово” и “ двойное слово” предполагает следующее
функциональное распределение битов:
старший бит MSBиспользуется, какзнаковый; значениеMSB= 0 соответствует положительному
знаку, а MSB= 1 – отрицательному знаку; число ноль считается положительным; остальные биты
являются значащими;
все биты, кроме знакового, считаются значащими; они выравниваются по левому краю формата,
т.е. старший бит MSBсоответствует старшему разряду дробного двоичного числа; ”лишние”
младшие биты обнуляются;
после старшего, знакового, бита логически фиксируется точка (запятая), отделяющая целую часть
( равную 0) от дробной.
Символическое обозначение формата, в котором представлено дробное число, имеет вид Qb, гдеb– количество
значащих битов дробного числа. На рис. 3.5 приведен пример представления дробного числа в формате Q7;
указаны веса и дано правило перевода двоичного дробного числа в десятичное.
7 6 5 4 3 2 1 0
-
0
0
1
0
0
1
0
1
Веса битов Знак 2-12-22-32-42-52-62-7
Десятичный эквивалент
+ (2-2+ 2-5+ 2-7 ) = 0,2890625
Рис.3. 5. Пример представления дробного числа в форматеQ7
Представление вещественного числа в формате “ расширенное слово” EXP:MSP:LSPзависит от того, является ли число дробным или смешанным (содержащим целую и дробную части).
Дробные числа размещаются вMSP:LSPчасти расширенного слова, при этом функциональное распределение битов таково:
знаковым считается старший бит словаMSP:LSP;
точка логически фиксируется после знакового бита;
в расширении EXTпроисходитрасширение знака дробного числа.
Функциональное распределение битов при размещении в расширенном слове EXP:MSP:LSPсмешанных чисел
следующее:
знаковый бит перемещается из старшего бита словаMSP:LSPв старший бит расширенияEXT;
остальные биты расширения EXTплюс старший бит MSP:LSPотводятся для храненияцелой части
числа; значащие биты целой части смешанного числа выравниваются по правому краю; длина целой
части равна длине расширения EXT; она может изменяться только в зависимости от режима
масштабирования (сдвига вправо/ влево) содержимого EXT:MSP:LSP; “ лишние” старшие биты вEXT
заполняются расширением знака;
для дробной части смешанного числа отводится словоMSP:LSPбез старшего бита; “ лишние” младшие
биты обнуляются.
Переход от дробного числа к смешанному фиксируется установкой специального бита в регистре состояния.
Функциональное распределение битов в слове аккумулятора процессоров DSP5600xфирмыMotorolaпоказано на рис.3.6. Отметим, что при представлении в формате расширенное слово дробного числа, значения всех битов расширенияEXTодинаковы и равны значению старшего (47—го, знакового), бита словаMSP:LSP; количество одинаковых битов равно длинеEXTплюс 1. ПРИ представлении смешанного числа в этой области размещается
целая часть смешанного числа со знаком, и значения битов в ней неодинаковые. Рекомендуем вернуться к данному описанию после знакомства с дополнительным кодом чисел.
а) аккумулятор содержит дробное число
55 48 47 24 23 0
-
1 1 1 1 1 1 1 1
1
0110 0
0 0
Расширение S Старшее словоMSP Младшее словоLSP
EXT
б) аккумулятор содержит смешанное число
55 48 47 24 23 0
-
1 1 1 1 1 1 1 1
1
0 1 1 1
0 0
EXT S MSP LSP
S целая часть Дробная часть
S – знак
Рис. 3. 6. Распределение битов в слове аккумулятора процессоров
DSP5600xфирмыMotorola
В процессорах с ФТ, как правило, все исходные и конечные данные вещественного типа путем масштабирования приводятся к дробным числам (об этом смотри ниже). Смешанные числа могут появляться
во внутренних промежуточных вычислениях, что при необходимости можно проконтролировать по установке соответствующего бита в регистре состояния. Принципиально возможна программная организация обработки
смешанных чисел, отдельно для целой и дробной частей, однако, на практике это используется крайне редко.
Поэтому в дальнейшем, говоря о вещественных числах в форме с ФТ, по умолчанию будем иметь в виду дробные числа, а смешанные оговаривать особо.