Зображення чисел у форматі з плаваючою комою

У чисел з плаваючою комою кома (точка) відділяє цілу частину числа від його дробової частини. Числа у форматі з плаваючою комою в оперативній пам’яті у полі заданої довжини часто містять знак порядку, порядок, знак мантиси і мантису (див. рис. 4.1).

 
 

 


Рис. 4.1 Один із форматів зображення чисел з плаваючою комою

 

Для зображення знаків порядка і мантиси резервують по одному біту: 0 – ознака додатного значення; 1 – ознака від’ємного значення. Знак числа збігається зі знаком мантиси.

Порядок – це число, що відтворює степінь, в який треба піднести число 2. На число 2 в степіні “порядок” треба помножити мантиссу, щоб отримати значення двійкового числа з плаваючою комою. Таким чином, порядок визначає місцезнаходження точки в двійковому числі у форматі з фіксованою комою.

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

Для отримання нормалізованого числа з плаваючою комою порядок необхідно змінити таким чином, щоб лівий (старший) біт мантиси був не 0. Наприклад, замість мантиси 00001011 ... 11 треба використати мантису 1011 ... 110000, але при цьому порядок треба зменшити на чотири.

Наприклад:

A10 = – 20.125

A2 = – 10100.0001 = – 0.101000001·2+5.

У форматі з плаваючою комою: мантисса М2 = 1010000012; порядок Р10 = 510 , Р2 = 1012.

Таким чином, для одного із варіантів зображення двійкового числа у форматі з плаваючою комою (наприклад, в 4‑байтовому полі) будемо мати наступне:

 

0 0000101 1 1010000 01000000

 

знак порядок знак мантиса

порядка мантиси