Представление чисел с плавающей точкой — различия между версиями
(Новая страница: «== Плавающая точка == {{Определение |definition= '''Плавающая точка (floating point)''' - метод представлени...») |
|||
Строка 1: | Строка 1: | ||
+ | {{В разработке}} | ||
== Плавающая точка == | == Плавающая точка == | ||
− | |||
{{Определение | {{Определение | ||
|definition= | |definition= | ||
Строка 6: | Строка 6: | ||
}} | }} | ||
Представление чисел с плавающей точкой рассмотрим на примере чисел ''двойной точности'' (''double precision''). | Представление чисел с плавающей точкой рассмотрим на примере чисел ''двойной точности'' (''double precision''). | ||
− | Такие числа занимают в памяти два машинных слова (8 байт на 32-битных системах). | + | Такие числа занимают в памяти два машинных слова (8 байт на 32-битных системах). Наиболее распространенное представление описано в IEEE 754. |
== Числа двойной точности == | == Числа двойной точности == | ||
− | |||
Число с плавающей точкой хранится в нормализованной форме и состоит из трех частей (в скобках указано количество бит, отводимых на каждую секцию в формате double): | Число с плавающей точкой хранится в нормализованной форме и состоит из трех частей (в скобках указано количество бит, отводимых на каждую секцию в формате double): | ||
# знак (1) | # знак (1) | ||
# экспонента (показатель степени) (11) | # экспонента (показатель степени) (11) | ||
# мантисса (52) | # мантисса (52) | ||
− | В качестве базы используется число 2. | + | В качестве базы (основания степени) используется число 2. |
{{TODO| t=Вставить картинку, когда можно будет загрузить файл}} | {{TODO| t=Вставить картинку, когда можно будет загрузить файл}} | ||
+ | |||
+ | {{Определение | ||
+ | |definition= | ||
+ | '''Нормализованной''' называется форма представления числа, при которой мантисса двоичного числа <tex> mant </tex> лежит в диапазоне <tex> [1, 2) </tex>. | ||
+ | }} | ||
{{Утверждение | {{Утверждение | ||
|statement= | |statement= | ||
− | + | Итоговое значение числа вычисляется по формуле: | |
<br><tex> x = sign \times mant \times base^{exp} </tex> | <br><tex> x = sign \times mant \times base^{exp} </tex> | ||
}} | }} | ||
Строка 25: | Строка 29: | ||
== Свойства чисел с плавающей точкой == | == Свойства чисел с плавающей точкой == | ||
# В нормализованном виде любое отличное от нуля число представимо в единственном виде. Недостатком такой записи является тот факт, что невозможно представить число 0. | # В нормализованном виде любое отличное от нуля число представимо в единственном виде. Недостатком такой записи является тот факт, что невозможно представить число 0. | ||
− | # | + | # Так как старший бит двоичного числа, записанного в нормализованной форме, всегда равен 1, его можно опустить. Это используется в стандарте IEEE 754. |
+ | # | ||
== Машинная эпсилон == | == Машинная эпсилон == |
Версия 02:36, 17 октября 2011
Эта статья находится в разработке!
Содержание
Плавающая точка
Определение: |
Плавающая точка (floating point) - метод представления действительных чисел, при котором число хранится в виде мантиссы и показателя степени. |
Представление чисел с плавающей точкой рассмотрим на примере чисел двойной точности (double precision). Такие числа занимают в памяти два машинных слова (8 байт на 32-битных системах). Наиболее распространенное представление описано в IEEE 754.
Числа двойной точности
Число с плавающей точкой хранится в нормализованной форме и состоит из трех частей (в скобках указано количество бит, отводимых на каждую секцию в формате double):
- знак (1)
- экспонента (показатель степени) (11)
- мантисса (52)
В качестве базы (основания степени) используется число 2.
TODO: Вставить картинку, когда можно будет загрузить файл
Определение: |
Нормализованной называется форма представления числа, при которой мантисса двоичного числа | лежит в диапазоне .
Утверждение: |
Итоговое значение числа вычисляется по формуле:
|
Свойства чисел с плавающей точкой
- В нормализованном виде любое отличное от нуля число представимо в единственном виде. Недостатком такой записи является тот факт, что невозможно представить число 0.
- Так как старший бит двоичного числа, записанного в нормализованной форме, всегда равен 1, его можно опустить. Это используется в стандарте IEEE 754.
Машинная эпсилон
Определение: |
Машинная эпсилон - наименьшее положительное число | , такое что, , где - машинное сложение.
Ссылки
Wikipedia: Floating point
Wikipedia: Double precision floating point format