-1,000000 | ||
0111 1111 1111 1111 | 0x7FFF | +0,999969482421875 |
1111 1111 1111 1111 | 0xFFFF | -0,000030517578125 |
Как видно из таблицы, самый младший разряд эквивалентен десятичному значению 0,000030517578125. Это значение и определяет точность представления всех чисел в данном формате. Для достижения большей точности необходимо расширять разрядность числа, например программным образом размещая число в два или три 16-разрядных регистра. Аналогично можно увеличить и диапазон обрабатываемых чисел.
В табл. 12.2 приведены все возможные варианты форматов для 16-разрядного числа. Эта таблица дает наглядное представление о том, как изменяется, в зависимости от формата, диапазон представляемых чисел и их точность.
Таблица 12.2
Формат | Количество целых разрядов | Количество дробных разрядов | Максимальное положительное значение | Максимальное отрицательное значение | Вес младшего разряда |
---|---|---|---|---|---|
1.15 | 1 | 15 | 0,999969482421875 | -1,0 | 0.000030517578125 |
2.14 | 2 | 14 | 1,999938964843750 | -2,0 | 0.000061035156250 |
3.13 | 3 | 13 | 3,999877929687500 | -4,0 | 0.000122070312500 |
4.12 | 4 | 12 | 7,999755859375000 | -8,0 | 0.000244140625000 |
5.11 | 5 | 11 | 15,999511718750000 | -16,0 | 0.000488281250000 |
6.10 | 6 | 10 | 31,999023437500000 | -32,0 | 0.000976562500000 |
7.9 | 7 | 9 | 63,998046875000000 | -64,0 | 0.001953125000000 |
8.8 | 8 | 8 | 127,996093750000000 | -128,0 | 0.003906250000000 |
9.7 |