Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
Информатика 1 курс / метод указания / Формы представления данных и преобразование информации в ЭВМ. Метод. указ. к лаб. работе.doc
Скачиваний:
61
Добавлен:
08.06.2015
Размер:
130.56 Кб
Скачать

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

Форма представления чисел с плавающей точкой (фпт) в ЭВМ является основной Она позволяет оперировать действительными числами в значительно более широком диапазоне, чем в ффт.

В общем случае двоичное число в фпт может быть записано в полулогарифмической форме:

x = M∙2P,

где M– мантисса (правильная дробь со знаком в формате ффт с точкой перед старшим разрядом);

P– порядок (целое со знаком), который определяет положение точки в числе х.

Формат представления чисел в фпт приведен на рис.3. В таком формате, как правило, крайний левый бит определяет знак числа (мантиссы), следующая за ним группа из mбитов – порядок со знаком, а остальныеn битов – модуль мантиссы. Знак кодируется так же, как и в ффт : 0 соответствует знаку "+" , 1 – знаку " – ".

Зн

Порядок

Мантисса

1 бит

m бит

n бит

Рис.3. Общий формат представления чисел с плавающей точкой.

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

Смещенный порядок Рсм, который чаще называют характеристикой, получают прибавлением к Р смещенияN = 2m - 1, т.е.

Рсм = Р + 2m - 1.

Если, в частности, под порядок со знаком отводится 8 разрядов, то смещение равно N = 27=128, или в двоичном коде 10000000. Отсюда при Р = -128 ÷ +127 характеристика будет лежать в диапазоне Рсм = 0 ÷ 255, или в двоичном коде 00000000 ÷ 11111111.

Нулевое значение старшего разряда характеристики говорит о том, что порядок Р отрицателен, а единичное значение – наоборот, о том, что порядок Р положителен.

Так как под мантиссу отводится фиксированное число битов, то для получения максимальной точности используются нормализованные числа. Процедура нормализации сводится традиционно к выполнению условия:

2-1 ≤ М< 1,

которому соответствует мантисса с единичным старшим разрядом.

Если в процессе вычислений получается ненормализованное число, оно автоматически нормализуется по правилу: если dстарших битов мантиссы нулевые (после точки), то производится ее сдвиг наdбитов влево (при этомdмладших битов обнуляются) с одновременным уменьшением порядка наdединиц; если появился перенос из старшего разряда мантиссы (целая часть мантиссы равна 1), то порядок увеличивают на единицу, а М сдвигается вправо на 1 разряд.

Диапазон представления чисел в фпт находится в прямой зависимости от числа разрядов, отведенных под порядок, а точность вычислений – от количества битов мантиссы.

В виду различных требований, предъявляемых к точности вычислений, в ЭВМ используются несколько форматов для представления чисел в фпт. Наиболее часто применяются два из них: короткий (4 байта) и длинный (8 байтов). Они имеют следующий вид:

а)

Зн

Порядок

Мантисса

31

30 23

22 0

б)

Зн

Порядок

Мантисса

63

62 52

51 0

Рис.4. Короткий (а) и длинный (б) форматы чисел с плавающей точкой

В коротком формате под порядок отводится 1 байт, под мантиссу – 23 бита, а в длинном формате под порядок отводится 11 бит, под мантиссу – 52 разряда.

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

N = 2m–1 –1

и условие нормализации числа вида:

1≤ М < 2.

В этом случае нормализованная мантисса представляется двоичным кодом с подразумеваемой целой частью, равной единице. В разрядной сетке этот бит не указывается и в памяти ЭВМ не хранится, а при выполнении операций восстанавливается, т.е. по существу это "скрытый" разряд. В результате обеспечивается фактическая точность представления чисел в указанных форматах соответствующим мантиссам с 24 и 53 битами, т.е. выше в два раза.

Например, необходимо представить в новом стандарте число 7.375 = 1.11011∙1010(здесь и основание системы счисления, и порядок записаны в двоичной системе).

Если используется короткий формат, то хранимая мантисса числа равна 11011 (целая часть скрыта), а величина смещения – N = 27-1 = 127. Таким образом, характеристика Рсм= 2+127 = 129, или в двоичной системе Рсм = 10000001. Поскольку число положительное, бит знакового разряда равен нулю. Поэтому число 7.375 в фпт в коротком формате нового стандарта имеет вид:

0

10000001

11011000000000000000000

31

30 23

22 0

Диапазоны представления действительных чисел в новом стандарте приведены в табл.1.