Представление чисел с плавающей точкой — различия между версиями
(→Числа двойной точности) |
|||
Строка 24: | Строка 24: | ||
|statement= | |statement= | ||
Итоговое значение числа вычисляется по формуле: | Итоговое значение числа вычисляется по формуле: | ||
− | <br><tex> x = sign \times 1.mant \times | + | <br><tex> x = (-1)^{sign} \times (1.mant) \times 2^{exp} </tex> |
}} | }} | ||
Версия 02:56, 17 октября 2011
Эта статья находится в разработке!
Содержание
Плавающая точка
Определение: |
Плавающая точка (floating point) - метод представления действительных чисел, при котором число хранится в виде мантиссы и показателя степени. |
Представление чисел с плавающей точкой рассмотрим на примере чисел двойной точности (double precision). Такие числа занимают в памяти два машинных слова (8 байт на 32-битных системах). Наиболее распространенное представление описано в стандарте IEEE 754.
Числа двойной точности
Число с плавающей точкой хранится в нормализованной форме и состоит из трех частей (в скобках указано количество бит, отводимых на каждую секцию в формате double):
- знак (1)
- экспонента (показатель степени) (11)
- мантисса (52)
В качестве базы (основания степени) используется число 2.
TODO: Вставить картинку, когда можно будет загрузить файл
Определение: |
Нормализованной называется форма представления числа, при которой мантисса двоичного числа | лежит в диапазоне .
Утверждение: |
Итоговое значение числа вычисляется по формуле:
|
Свойства чисел с плавающей точкой
- В нормализованном виде любое отличное от нуля число представимо в единственном виде. Недостатком такой записи является тот факт, что невозможно представить число 0.
- Так как старший бит двоичного числа, записанного в нормализованной форме, всегда равен 1, его можно опустить. Это используется в стандарте IEEE 754.
Машинная эпсилон
Определение: |
Машинная эпсилон - наименьшее положительное число | , такое что, , где - машинное сложение.
Погрешность предиката "левый поворот"
Ссылки
en.wikipedia.org Floating point
en.wikipedia.org Double precision floating point format
Goldberg, D. 1991 What every computer scientist should know about floating-point arithmetic