Представление вещественных чисел — различия между версиями

Материал из Викиконспекты
Перейти к: навигация, поиск
(Диапазон чисел, представимых в формате с плавающей запятой)
Строка 16: Строка 16:
 
=== Диапазон чисел, представимых в формате с плавающей запятой ===
 
=== Диапазон чисел, представимых в формате с плавающей запятой ===
 
Диапазон чисел, которые можно записать данным способом, зависит от количества бит, отведённых для представления мантиссы и показателя. Пара значений показателя зарезервирована для обеспечения возможности представления специальных чисел. К ним относятся значения NaN (Not a Number, не число) и +/-INF (Infinity, бесконечность), получающихся в результате операций типа деления на ноль нуля, положительных и отрицательных чисел.
 
Диапазон чисел, которые можно записать данным способом, зависит от количества бит, отведённых для представления мантиссы и показателя. Пара значений показателя зарезервирована для обеспечения возможности представления специальных чисел. К ним относятся значения NaN (Not a Number, не число) и +/-INF (Infinity, бесконечность), получающихся в результате операций типа деления на ноль нуля, положительных и отрицательных чисел.
 +
 +
<center>
 +
 +
<table border=1 CellSpacing="0" CellPadding="2">
 +
 +
<tr><th>Тип</th><th>Диапазон</th><th>Мантисса</th><th>Байты</th></tr>
 +
 +
<tr><td>Real</td><td>2,9&times;10<sup>-39</sup>..1,7&times;10<sup>38</sup></td><td>11-12</td><td>6</td></tr>
 +
 +
<tr><td>Single</td><td>1,5&times;10<sup>-45</sup>..3,4&times;10<sup>38</sup></td><td>7-8</td><td>4</td></tr>
 +
 +
<tr><td>Double</td><td>5,0&times;10<sup>-324</sup>..1,7&times;10<sup>308</sup></td><td>15-16</td><td>8</td></tr>
 +
 +
<tr><td>Extended</td><td>3,4&times;10<sup>-4932</sup>..1,1&times;10<sup>4932</sup></td><td>19-20</td><td>10</td></tr>
 +
 +
</table>
 +
 +
</center>
  
 
=== Число половинной точности ===
 
=== Число половинной точности ===

Версия 05:06, 1 ноября 2010

Вещественные числа обычно представляются в виде чисел с плавающей запятой.


Определение:
Плавающая запятая — форма представления дробных чисел, в которой число хранится в форме мантиссы и показателя степени. При этом число с плавающей запятой имеет фиксированную относительную точность и изменяющуюся абсолютную. Наиболее часто используемое представление утверждено в стандарте IEEE 754.

При этом лишь некоторые из вещественных чисел могут быть представлены в памяти компьютера точным значением, в то время как остальные числа представляются приближёнными значениями.

В наиболее распространённом формате число с плавающей запятой представляется в виде последовательности битов, часть из которых кодирует собой мантиссу числа, другая часть — показатель степени, и ещё один бит используется для указания знака числа, 0 - если число положительное, 1 - если число отрицательное.

Нормальная форма и нормализованная форма

Нормальной формой числа с плавающей запятой называется такая форма, в которой мантисса (без учёта знака) находится на полуинтервале [0; 1). Такая форма записи имеет недостаток: некоторые числа записываются неоднозначно (например, 0,0001 можно записать в 4 формах — 0,0001×100, 0,001×10−1, 0,01×10−2, 0,1×10−3), поэтому распространена также другая форма записи — нормализованная, в которой мантисса десятичного числа принимает значения от 1 (включительно) до 10 (не включительно), а мантисса двоичного числа принимает значения от 1 (включительно) до 2 (не включительно). В такой форме любое число (кроме 0) записывается единственным образом. Недостаток заключается в том, что в таком виде невозможно представить 0, поэтому представление чисел в информатике предусматривает специальный признак (бит) для числа 0. Так как старший разряд (целая часть числа) мантиссы двоичного числа (кроме 0) в нормализованном виде равен «1», то при записи мантиссы числа в эвм старший разряд можно не записывать, что и используется в стандарте IEEE 754. В позиционных системах счисления с основанием большим, чем 2 (в троичной, четверичной и др.), этого свойства нет.

Диапазон чисел, представимых в формате с плавающей запятой

Диапазон чисел, которые можно записать данным способом, зависит от количества бит, отведённых для представления мантиссы и показателя. Пара значений показателя зарезервирована для обеспечения возможности представления специальных чисел. К ним относятся значения NaN (Not a Number, не число) и +/-INF (Infinity, бесконечность), получающихся в результате операций типа деления на ноль нуля, положительных и отрицательных чисел.

ТипДиапазонМантиссаБайты
Real2,9×10-39..1,7×103811-126
Single1,5×10-45..3,4×10387-84
Double5,0×10-324..1,7×1030815-168
Extended3,4×10-4932..1,1×10493219-2010

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

Число́ полови́нной то́чности  — компьютерный формат представления чисел, занимающий в памяти половину компьютерного слова (в случае 32-битного компьютера — 16 бит или 2 байта). Диапазон значений ± 2−24(5.96E-8) — 65504. Приблизительная точность — 3 знака (10 двоичных знаков, log10(211)).

Знак
Экспо-
нента
Мантисса
0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0
15 8 7 0

Число одинарной точности

Число́ одина́рной то́чности — компьютерный формат представления чисел, занимающий в компьютерная памяти одну ячейку (машинное слово; в случае 32-битного компьютера — 32 бита или 4 байта). Как правило, обозначает формат числа с плавающей точкой стандарта IEEE 754.

Знак
Экспонента Мантисса
0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0
31 24 23 16 15 8 7 0

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

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

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

Число четверной точности

Число́ четверно́й то́чности — компьютерный формат представления чисел, занимающий в памяти четыре последовательных ячейки (компьютерных слова; в случае 32-битного компьютера — 128 бит или 16 байт). Как правило, обозначает формат числа с плавающей запятой binary128 стандарта IEEE 754.

Формат числа четверной точности Бит знака: 1

Длина значения экспоненты: 15

Мантисса: 112

Cсылки