Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
Informatika.docx
Скачиваний:
6
Добавлен:
01.07.2025
Размер:
4 Мб
Скачать
☆

Диапазон представления чисел 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. Отрицательные числа от –(1-2-24)x2128 до -0,5x2-127

  2. Положительные числа от 0,5x2-127 до (1-2-24)x2128

Пять областей на числовой оси не включены в диапазон представления:

С трого говоря, описанное выше представление не позволяет хранить число 0. Но на практике код, состоящий из всех нулей во всех разрядах, считается допустимым и представляет число 0. На практике область потери значимости условно считают нулем. А перепревшие трактуется как и переполнение в формате целых чисел. Очевидно, что формат с плавающей точкой не позволяет представить больше отличающихся друг от друга числовых величин. Из количество, как и в формате с фиксированной точкой, равно 232 для слова длиной 32 бита. Речь идёт только о том, что эти числовые величины по иному распределены на числовой оси. Интервал между соседними числами переменный и зависит от абсолютно величины числа. Соседние числа, ближе расположенные к центру числовой оси, отличаются на меньшую величину, чем соседние числа, удаленные от центра. В этом принципиальное отличие такой формы представления от формы представления с фиксированной точкой.

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

В расстраиваемом примере формата под порядок отводится 8 бит, а под мантиссы 23 (24). Если увеличить длину поля порядка, диапазон представления расширится, но при этом придётся сократить поле мантиссы, а значит, точность представления снизится, то есть уменьшится плотность размещения чисел на оси. Единственны способ увеличить и диапазон, и точность представления – это расширить разрядную сетку, поэтому в большинстве систем имеются два формата с плавающей точкой – обычной и удвоенной точности, например, типовой формат обычной точности занимает 32-битовое слово, а формат удвоенной точности занимает 64 бита.

Соседние файлы в предмете [НЕСОРТИРОВАННОЕ]