1. Расписать по знакам исходное 16-ричное число на двоичные разряды;
2. По первому биту определить знак числа;
3. Вычислить истинный порядок: из смещенного порядка вычесть сдвиг порядка;
4. Записать знак, подразумеваемую единицу, в дробную часть выписать мантиссу, умножить полученное число на , упростить полученное выражение;
5. Перевести полученное число в десятичную систему счисления.
Характеристики некоторых форматов стандарта
Характеристика форматов | Одинарная точность | Двойная точность |
Количество битов в знаке | ||
Количество битов в экспоненте (порядке) | ||
Количество битов в мантиссе | ||
Общее число битов | ||
Смещение экспоненты | ||
Область значений экспоненты | От -126 до 127 | От -1022 до 1023 |
Самое маленькое нормализованное число | 2-126 | 2-1022 |
Самое большое нормализованное число | 2128 | 21024 |
Диапазон десятичных дробей | От 10-38 до 1038 | От 10-308 до 10308 |
Самое маленькое ненормализованное число | 10-45 | 10324 |
Название типа в C/C++ | Float | Double |
Категории отображаемых значений
Тип числа | Знак | Порядок | Мантисса |
Нормализованное число | ± | 0<E<max | Любой набор битов |
Ненормализованное число | ± | Любой ненулевой набор битов | |
Ноль | ± | ||
Бесконечность | ± | Все единицы (max) |
Лекция №4