Представление чисел с фиксированной и плавающей запятой

В вычислительных машинах применяются две формы представления двоичных чисел:

- естественная форма, или форма с фиксированной запятой (точкой);

- нормальная форма, или форма с плавающей запятой (точкой).

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

Например: в десятичной системе счисления имеется 5 разрядов в целой части числа (до запятой) и 5 разрядов в дробной части числа (после запятой); числа, записанные в такую разрядную сетку, имеют вид:

 

+00721.35500; +00000.000328; -10301.20260.

 

Эта форма наиболее проста, естественна, но имеет небольшой диапазон представления чисел и поэтому чаще всего не приемлема при вычислениях. Диапазон значащих чисел N в системе счисления с основанием Р при наличии т разрядов в целой части и s разрядов в дробной части числа (без учета знака числа) будет таким:

Например, при Р= 2, т = 10 и s = 6 числа изменяются в диапазоне 0,015 < N< 1024. Если в результате операции получится число, выходящее за допустимые пределы, произойдет переполнение разрядной сетки, и дальнейшие вычисления теряют смысл. В современных компьютерах естественная форма представления используется как вспомогательная и только для целых чисел.

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

,

где М — мантисса числа (|M| < 1); r — порядок числа (целое число); Р — основание системы счисления.

Например, приведенные ранее числа в нормальной форме запишутся следующим образом: +0,721355 • 103; +0,328 • 10-3; -0,103012026 • 105.

Нормальная форма представления имеет огромный диапазон отображения чисел и является основной в современных компьютерах. Так, диапазон значащих чисел в системе счисления с основанием Р при наличии т разрядов у мантиссы и s разрядов у порядка (без учета знаковых разрядов порядка и мантиссы) будет:

.

Приведем пример. При P=2, m=22 и s=10 диапазон чисел простирается примерно от 10-300 до 10300. Для сравнения: количество секунд, которые прошли с момента образования планеты Земля, составляет всего 1018.

Следует заметить, что все числа с плавающей запятой хранятся в машине в так называемом нормализованном виде. Нормализованнымназывают такое число, в старшем разряде мантиссы которого стоит единица. У нормализованных двоичных чисел, следовательно, 0,5 < |М| < 1.