Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
Введение в программирование и ЭВМ, 1 лекция.docx
Скачиваний:
4
Добавлен:
04.11.2018
Размер:
40.34 Кб
Скачать

Денормализованные вещественные числа

Денормализированное число – это число меньшее минимального числа, которое может быть задано соответствующим представлением. Их использование позволяет увеличить предельные границы вещественных чисел в особо мелких операциях. Чем меньше денормализованное число, тем большая будет погрешность от его применения и тем медленнее с ним работает процессор. Некоторые платформы вообще не поддерживают денормализованных чисел.

Чем меньше число, тем меньше его экспонента и соответственно, характеристика (см.ниже). Настает момент, когда характеристика числа становится равна нулю, но мантисса по-прежнему содержит какое-то ненулевое значение. Это и есть денормализованное число. Оно отличается от нормализованного тем, что у него характеристика установлена в 0, и означает, что сведения о размере числа полностью содержатся в мантиссе.

Какое именно число представлено денормализованно? Это всегда единица в сверхмелкой степени. Т.о. мантисса становится экспонентой, а мантиссой становится единица.

Специальные представления

Нули: положительный и отрицательный

Мантисса и характеристика равны нулю. Знак = 0|1.

<1|0><00…0><00…0>

Бесконечности: положительная и отрицательная

<1|0><11…1><10…0>

Не числа: qNaNи sNaN

Нечисла бывают спокойными и сигнальными. К появлению нечисел приводят попытки выполнения недопустимых операций (например, деления 0 на 0). В отличие от спокойных нечисел, сигнальные генерируют прерывания, в ходе обработки которых сигнальные нечисла обычно заменяются на тихие.

Все операции с NaNдают NaN.

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

Представление:

  1. qNaN – (quiet Not a Number) тихое нечисло

<x><11…1><10xxx…x>

  1. sNaN – (signaling Not a Number) сигнальное нечисло

<x><11…1><11xxx…x>

Одним из сигнальных нечисел является неопределенность:

<1><11…1><11000…0>

Преобразование десятичного числа в двоичное представление

  1. Перевод числа в двоичную систему

  1. Нормализация – разложение на мантиссу и экспоненту основания (2) системы счисления

Мантисса = , экспонента =

  1. Вычисление конечной экспоненты числа (т.Е. Характеристики)

Для представления экспоненты используется представление со смещением.

    1. Вычисляется, как и положено этому способу представления:

    2. Смещение у всех типов разное, но традиционно для этого способа представления составляет половину от максимального значения экспоненты, предпочтение отдается положительному интервалу, т.е. он на 1 больше. Иначе говоря:

Например, для 5 бит это , для 11 бит это

  1. Корректировка мантиссы числа

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

    1. Происходит обрезание мантиссы под конкретный тип данных и если данный тип не extended, то первая единица отбрасывается.

    1. Если число невозможно представить в двоичном формате точно, то оно округляется к ближайшему из возможных. Если округляемое число находится точно посередине между двумя ближайшими вариантами, используется округление к четному (см.ниже).

– округлено к ближайшему