Знак числа
Здесь
n – разрядность нормализованного числа;
m – разрядность мантиссы.
Порядок n–разрядного нормализованного числа задаётся смещённым кодом, позволяющим выполнять операции над порядками как над беззнаковыми числами.
При размещении порядка числа в 8-ми разрядах используется двоичный код с избытком 128.
Пример.
Заполнение 8-ми разрядов (1-го байта) десятичными числами по разрядам от 0 до 7
00 |
Десятичные 128 64 32 16 8 4 2 1 номера разрядов
числа
сумма 127
сумма 255
Пример.
Представление реальных десятичных порядков смещёнными двоичными порядками без знаков.
Реальный десятичный порядок | Смещённый десятичный порядок | Смещённый двоичный порядок | |||||||
255–128 | |||||||||
… | … | 7) | 6) | 5) | 4) … | 3) | 2) | 1) | 0) |
(128+3)–128 | |||||||||
(128+2)–128 | |||||||||
(128+1)–128 | |||||||||
(128+0)–128 | |||||||||
–1 | 127–128 | ||||||||
–2 | 126–128= =(127–1)–128 | ||||||||
–3 | 125–128= =(127–2)–128 | ||||||||
… | … | … | |||||||
-128 | 0–128 |
Пример. Кодирование нормализованных вещественных чисел одинарной точности.
Для этого используются два машинных слова – 32 разряда, из них 8 разрядов – для смещённого порядка числа.
Первое слово
15 |
-1) - 2) - 3) - 4) -5) -6) -7)
8 бит – смещённый порядок числа Степени основания (числа 2)
системы счисления
7 старших бит мантиссы
Знак числа
Второе слово
-8) - 9) ……..
16 младших бит мантиссы
Всего в мантиссе здесь 7+16=23 разряда.
Нормализованное вещественное число двойной точности – это 64-разрядное число со знаком (1 разряд), 11-разрядным смещённым порядком и 52-разрядной мантиссой.
Расширенный формат позволяет хранить нормализованные числа в виде 80-разрядного числа со знаком (1 разряд), 15-разрядным смещённым порядком и 64-разрядной мантиссой.
Для мантиссы числа выполняется соотношение
0.5£m<1.
Наглядное представление:
Первое слово, 7 старших бит мантиссы | второе слово, 16 младших бит мантиссы |
| … | ||||||||||
6) | 5) | 4) | 3) | 2) | 1) | 0) | 15) | 0) |
|
0.250000
0.125000
0.062500
0.015625
0.007812
0.003806…
0.996093
Максимальное вещественное число
Хmax=m×2Pmax » 1×2Pmax,
где Pmax – максимальный порядок числа,
| |||||||||
7) | 6) | 5) | 4) | 3) | 2) | 1) | 0) |
Pmax =2 7 + 2 6 + 2 5 + 2 4 + 2 3 + 2 2 + 2 1 + 2 0 =
=(128+64+32+16+8+4+2+1)–128 = 127 (=27–1).
В итоге получаем
Хmax= 2 127×= 1.69×1038.
Минимальное вещественное число
Хmin=2 –(Pmax+1) = 2–128×= 2.69×10 -39.