Представление вещественного числа в памяти
Введите десятичное число, чтобы увидеть его 32-битное представление (IEEE 754).
Разбор представления IEEE 754 (32-бит)
Знак (1 бит):
0 для положительного числа, 1 для отрицательного.
Экспонента (8 бит):
Хранится со смещением (bias). Для 32-битного формата смещение равно 127. Реальная экспонента = сохраненная экспонента - 127.
Двоичное значение:
Десятичное значение (сохраненное):
Реальная экспонента:
Мантисса (23 бита):
Представляет дробную часть числа в нормализованной форме. Неявная '1.' предполагается перед этими битами (для нормальных чисел).
Двоичное значение:
Значение с неявной единицей:
Восстановление числа:
Формула: (-1)^Знак * (1.Мантисса)_2 * 2^(Экспонента - 127)
Как это работает?
Компьютеры хранят вещественные числа (числа с плавающей точкой) в формате, стандартизированном IEEE 754. Этот стандарт определяет, как число разбивается на три части для эффективного хранения и вычислений:
- Знак (Sign): Один бит, указывающий, является ли число положительным (0) или отрицательным (1).
- Экспонента (Exponent): Несколько бит, представляющих порядок числа (насколько велико или мало число). Хранится в "смещенном" формате, чтобы можно было представлять как очень большие, так и очень маленькие порядки.
- Мантисса (Mantissa) или Значащая часть (Significand): Оставшиеся биты, представляющие фактические цифры числа (его точность). Для нормализованных чисел первая цифра (перед десятичной точкой в двоичной системе) всегда 1 и не хранится явно для экономии места.
Например, число 20.75 в десятичной системе:
- Знак: Положительный, поэтому бит знака = 0.
- Преобразование в двоичную систему: 20.75₁₀ = 10100.11₂.
- Нормализация: 10100.11₂ = 1.010011₂ × 2⁴.
- Экспонента: Реальная экспонента = 4. Смещенная экспонента = 4 + 127 = 131. В двоичном виде (8 бит): 10000011₂.
- Мантисса: Дробная часть после нормализации: 010011. Дополняется нулями до 23 бит: 01001100000000000000000₂.
Итоговое 32-битное представление будет: 0 | 10000011 | 01001100000000000000000