Свойство формата с нормализованным представлением двоичной мантиссы.



Старшая позиция поля нормализованной мантиссы при любом основании P не содержит 0. При  нормализованная мантисса всегда содержит 1 в старшем разряде. В иных системах счисления нормализованная мантисса может содержать в старшем разряде разные цифры, но не 0. Это свойство позволяет задавать старший значащий разряд двоичной нормализованной мантиссы по умолчанию, или точнее, выполнять совместное кодирование порядка и старшего разряда мантиссы в поле порядка. В иных системах счисления это нецелесообразно.

При задании старшего разряда двоичной нормализованной мантиссы по умолчанию поле мантиссы будет содержать только младшие ее разряды. В новом представлении код значения 0 во всех битах поля мантиссы означает, что мантисса не равна нулю, а имеет минимальное нормализованное значение 100…0. Вследствие этого возникает задача кодирования значения 0 и ненормализованных чисел с порядком  необходимых для создания области растянутой потери значимости. Ее решение возможно путем кодирования порядка равного  не одним кодом в поле порядка, а двумя кодами. Первый из них, так же как и все прочие коды порядка, определяет, что в поле мантиссы записан код младших разрядов нормализованной мантиссы с 1 в старшем неявно заданном разряде. Запись второго кода  в поле порядка означает, что поле мантиссы содержит код младших разрядов ненормализованной мантиссы с 0 в старшем неявно заданном разряде или код нуля.

Пример 5-5. Пусть для кодирования порядка используется четырехразрядный двоичный код. Пусть код 0000 соответствует  при ненормализованной мантиссе, а код 0001 соответствует  при нормализованной мантиссе. Иные коды порядка соответствуют другим значениям порядка при нормализованной мантиссе. Пусть 6 битовое поле мантиссы содержит младшие разряды мантиссы, а ее старший разряд в поле мантиссы не представлен.

В первой строке записаны коды чисел в формате с неявно заданным старшим разрядом мантиссы. Во второй строке приведены значения тех же кодов после проявления значения старшего разряда

 

A                    B                     C                  D                       E                  F

0|0001|011010 0|0000|011010 0|0000|000000 0|0001|000000 0|0001|001101 0|0110|001101

0| |1011010 0| |0011010 0| |0000000 0| |1000000 0| |1001101 0|E|1001101

 

В вариантах A-E значение порядка совпадает и равно .

В вариантах A, D, E мантисса нормализована, т.к. код порядка 0001. Поэтому в варианте D мантисса имеет минимально возможное нормализованное значение  а не 0. В варианте D записано минимально возможное положительное нормализованное число  являющееся значением нижней границы области нормализованных положительных чисел.

В вариантах B, C мантиссы ненормализованные и их старший разряд равен 0. В варианте C мантисса равна 0. Следовательно, формат содержит код нуля.

В варианте F записано число с порядком  принадлежащее области нормализованных чисел, так как код порядка не равен 0000.

Из примера следует, что информация о значении старшего разряда мантиссы в поле мантиссы отсутствует и содержится в коде порядка. В этом состоит совместное кодированиепорядка и старшего разряда мантиссы в поле порядка.

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

Свойства форматов с переменными длинами полей порядка и мантиссы.Различают форматы с переменной ограниченной и неограниченной длиной поля . Если в форматах с фиксированными длинами полей их длины задают по умолчанию, то в форматах с переменной длиной одного или обеих полей необходимо определять длину переменного поля в явном виде. Это можно сделать, например, задавая длину поля или признак окончания/начала поля.

Формат с переменной неограниченной длиной поля мантиссы позволяет выделять количество позиций равное количеству значащих разрядов в записываемом числе, т.е. записывать число с абсолютной точностью. Но, так как числа могут иметь бесконечно большое число значащих разрядов, например число p=3,14… , то формат с неограниченной длиной поля мантиссы в его чистом виде не применяется.

Формат с переменной ограниченной длиной поля мантиссы позволяет задавать требуемую точность представления числа назначением предельной длины поля и экономить позиции при записи “коротких” чисел с количеством значащих разрядов меньшим величины заданного ограничения.

Формат с переменной ограниченной длиной поля порядка позволяет экономить количество позиций в поле порядка при записи чисел с “коротким” значением порядка. Задавая большую предельную длину поля порядка, снижают вероятность ситуаций потери значимости и переполнения. При этом среднестатистическая длина формата будет сравнительно небольшой из-за малой вероятности значений порядка близких к предельному.

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


Дата добавления: 2020-11-23; просмотров: 89; Мы поможем в написании вашей работы!

Поделиться с друзьями:






Мы поможем в написании ваших работ!