- •Основные понятия
- •Понятие количества информации
- •Ограничения и допущения:
- •Свойства энтропии
- •Модель информационных объектов
- •Системы счисления
- •Римская система счисления
- •Представление целых чисел со знаком в прямом коде
- •Представление целых чисел со знаком в дополнительном коде
- •Целые числа без знака
- •Целые числа со знаком
- •Переполнение при выполнении операций в дополнительном коде
- •Представление целых чисел со знаком в обратном коде
- •Двоичнокодированные десятичные числа и кодирование
- •Представление вещественных чисел с плавающей точкой. Основные положения.
- •Формат с плавающей точкой для представления вещественных чисел
- •Диапазон представления чисел 32-ух разрядном формате
- •Стандарт ieee формата с плавающей точкой
- •Кубическое представление Булевых функций.
- •Геометрическая интерпретация куба
Диапазон представления чисел 32-ух разрядном формате
Если в слове хранить целые числа в доп. коде, то диапазон представления будет охватывать 2^32 чисел от 2^-31 до 2^31 - 1.
5 областей на числ. оси не включены в диапазон представления: 1) Отриц. числа 2) Числа с потерей значимостью 3) Отриц. числа меньшие -(1-2^-24) x 2^128 4) Полож. числа, меньшие 0.5 x 2^-127 (положительная область потери значимости) 5) Положительные числа, большие (1-2^-24) x 2^128 (Положительная область переполнения)
На практике область потери значимости условно считают 0, а переполнения - как и в формате целых чисел. Фактически, результаты округляются с точностью, определяемой разрядной сеткой.
В этом формате под порядок отводится 8 бит, а под Мантису - 24. Если увеличить длину поля порядка, диапазон расширится, но прийдется сократить поле Мантисы, а значит точность снизится.
При записи в поле порядка хранится код, соответсвующий 5, а не 20, пуская и код один, влияет система.
Для унификации формата, американским институтом разработан стандарт IEEE 754. В первом порядке - 8 бит, во втором - 11 бит. Стандарт регламентирует использование двойки в качестве неявно заданого значения основания характеристики. Помимо основных, есть еще 2 расширенных вариантов форматов обычной и удвоенной точности, спецификация которых зависит от аппарата реализации. Расширенные форматы позволяют включать дополнительные биты в поле порядка(за счет Мантисы) или добавлять биты в поле Мантисы за счет поля порядка, для увеличения точности.
Расширенные форматы предназначаются для промежуточных вычислений, то есть позволяют избежать слишком больших ошибок округления или попадать в зоны значимости переполнения. Он не требует соответствующего увеличения времени выполнения. Стандарт вводит следующие ограничения для крайних величин. Крайнее значение порядка - все 0 и все 1(255 или 2047) представляют особые величины: 1)При значении кода в поле порядка от 1 до 254 используется смещенный формат представления порядка, то есть интервал от -126 до 127. Нормализованная Мантиса включает бит, равный 1, который не хранится в поле Мантиса, следовательно, в порядке обычной точности Мантиса имеет 25 разряда, а в расширенной - 53 разряда. 2)Нулевое значение в поле порядка совместно с нулевым значением поля Мантисы: 0 или -0, в зависимости от кода в виде знака Мантисы. 3)Заполнение поля порядка кодом 1, совместно с нулевым кодом поля Мантисы, представляет величины +бесконечность или -бесконечность, в зависимости от кода в бите знаков. Таким образом, формат позволяет представить на ограниченной разрядной сетке неограниченнную величину.
Разработчик может трактовать это как переполнение или как-нибудь иначе. 4)Нулевое значение в поле порядка и ненулевое значение в поле Мантисы представляет ненормализованные числа. В этом случае считает, что неявный старший разряд Мантисы равен 0, а значение порядка равно -126 или -1022. Заполнение кода порядка кодом 1, вместе с ненулевым кодом в поле Мантисы представляет необычные числовые величины.
Включение в регламентированные стандарты позволяет программисту отслеживать различные исключительные ситуации.
Особенности записи чисел в формате с плавающей точкой:
Знак числа (знак мантиссы) хранится в старшем бите слова.
Первый разряд мантиссы всегда равен единице и в полное мантиссы не хранится.
К действительному значению порядка прибавляется смещение 127 и в поле порядка хранится эта сумма.
Основание характеристики равно двум.
Диапазон представления чисел в 32-разрядном формате
Если в слове длины 32 разряда хранить целые числа в дополнительном коде, то диапазон представления будет охватывать 232 чисел. В формате с плавающей точкой с распределением полей, как было сказано выше, можно хранить:
Отрицательные числа от –(1-2-24)x2128 до -0,5x2-127
Положительные числа от 0,5x2-127 до (1-2-24)x2128
Пять областей на числовой оси не включены в диапазон представления:
С
трого
говоря, описанное выше представление
не позволяет хранить число 0. Но на
практике код, состоящий из всех нулей
во всех разрядах, считается допустимым
и представляет число 0. На практике
область потери значимости условно
считают нулем. А перепревшие трактуется
как и переполнение в формате целых
чисел. Очевидно, что формат с плавающей
точкой не позволяет представить больше
отличающихся друг от друга числовых
величин. Из количество, как и в формате
с фиксированной точкой, равно 232
для слова длиной 32 бита. Речь идёт только
о том, что эти числовые величины по иному
распределены на числовой оси. Интервал
между соседними числами переменный и
зависит от абсолютно величины числа.
Соседние числа, ближе расположенные к
центру числовой оси, отличаются на
меньшую величину, чем соседние числа,
удаленные от центра. В этом принципиальное
отличие такой формы представления от
формы представления с фиксированной
точкой.
Таким образом, при выполнении вычислений в формате с плавающей точкой необходимо искать компромисс между диапазоном предстанете о точностью вычислений. Фактически, результаты округляются с точностью, определяемой меньше разрядной сеткой.
В расстраиваемом примере формата под порядок отводится 8 бит, а под мантиссы 23 (24). Если увеличить длину поля порядка, диапазон представления расширится, но при этом придётся сократить поле мантиссы, а значит, точность представления снизится, то есть уменьшится плотность размещения чисел на оси. Единственны способ увеличить и диапазон, и точность представления – это расширить разрядную сетку, поэтому в большинстве систем имеются два формата с плавающей точкой – обычной и удвоенной точности, например, типовой формат обычной точности занимает 32-битовое слово, а формат удвоенной точности занимает 64 бита.
