Share to: share facebook share twitter share wa share telegram print page

Число двойной точности

Число двойной точности
Изображение
Предыдущее по порядку Число одинарной точности
Следующее по порядку Число четверной точности
Размер данных 64 b
Орган по стандартизации Институт инженеров электротехники и электроники

Число́ двойно́й то́чности (Double precision, Double) — компьютерный формат представления числа с плавающей запятой, занимающий в памяти 64 бита, или 8 байт. Как правило, обозначает числа с плавающей запятой стандарта IEEE 754.

Числа с плавающей запятой (двойной/одинарной/четверной точности) поддерживаются сопроцессором (до 80486SX включительно выполнен как отдельный модуль — 0х87/0х287/0х387/0х487, начиная с 80486DX является встроенным в главный процессор. Сопроцессор, хотя он сейчас и является частью главного процессора, принято называть FPU — Floating Point Unit, буквально «модуль плавающей запятой»). В компьютерах, которые имеют 64-разрядные числа с плавающей запятой, большинство чисел хранятся в двойной точности, поскольку использование чисел одинарной точности обеспечивает почти такую же производительность, но все вычисления в FPU осуществляются в 80-битном (расширенном, extended) представлении.

Одним из первых языков программирования, позволявшим использовать числа одинарной и двойной точности с плавающей запятой, был Фортран.

Числа двойной точности с плавающей запятой эквивалентны по точности числу с 15-17 значащими десятичными цифрами (в среднем 16,3) в диапазоне примерно от 10−308 до 10308.

Знак
(11 бит)
Порядок
(52 бита)
Мантисса
63 56 55 48 47 40 39 32 31 24 23 16 15 8 7 0

Окончательное значение числа равняется ±знак · (1+мантисса/ 252) × 2порядок − 1023. Знак 0 соответствует положительным числам, знак 1 отрицательным. Старший бит мантиссы, который всегда равен единице, опускается. Порядок 0 записывается как 1023.

Существуют также денормализованные числа, записываемые порядком 00…00 и имеющие значение ±знак × (0+мантисса/ 252) · 21 − 1023. Денормализованные числа имеют уменьшенное количество значащих цифр мантиссы. Порядок 11…11 предназначен для записи особых чисел: «бесконечности» и «не-числа» — NaN.

Примеры чисел двойной точности

  • 0x 3ff0 0000 0000 0000 = 1
  • 0x 3ff0 0000 0000 0001 ≈ 1,0000000000000002 (наименьшее число, большее 1)
  • 0x 3ff0 0000 0000 0002 ≈ 1,0000000000000004
  • 0x 4000 0000 0000 0000 = 2
  • 0x c000 0000 0000 0000 = –2
  • 0x 0000 0000 0000 0001 = 2–1022–52 ≈ 4,9406564584124654×10−324 (минимальное денормализованное положительное число двойной точности)
  • 0x 000f ffff ffff ffff = 2–1022– 2–1022–52 ≈ 2,2250738585072009×10-308 (максимальное денормализованное положительное число двойной точности)
  • 0x 0010 0000 0000 0000 = 2–1022 ≈ 2,2250738585072014×10−308 (минимальное нормализованное положительное число двойной точности)
  • 0x 7fef ffff ffff ffff = (1 + (1 – 2–52))×21023 ≈ 1,7976931348623157×10308 (максимальное число двойной точности)
  • 0x 0000 0000 0000 0000 = 0
  • 0x 8000 0000 0000 0000 = –0
  • 0x 7ff0 0000 0000 0000 = Infinity
  • 0x fff0 0000 0000 0000 = −Infinity
  • 0x 7fff ffff ffff ffff = NaN
  • 0x 3fd5 5555 5555 5555 ≈ 1/3

См. также

Ссылки

Kembali kehalaman sebelumnya