Тема 5. Формы представления чисел в ЭВС и их кодирование

РАЗДЕЛ 2. АРИФМЕТИЧЕСКИЕ ОСНОВЫ ЭВС

1. Представление чисел с фиксированной запятой

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

В ЭВС применяют две формы представления чисел: с фиксированной запятой (точкой) и с плавающей запятой (точкой). Эти формы называют также соответственно естественной и нормальной.

При естественной форме число записывается в естественном натуральном виде с выделением в общем случае следующих компонент числа: знака, запятой и цифр числа. Для сокращения длины разрядной сетки и упрощения обработки данных в конкретных ЭВС положение запятой фиксируется схемотехнически, т.е. аппаратными средствами. Такая форма представления числа называется формой с фиксированной запятой. Такое название связано с тем, что запятая, отделяющая дробную часть от целой, фиксируется в определенном месте относительно разрядов числа. При этом в слове данных сохраняются только два структурных компонента: один знаковый разряд и n разрядов для представления цифр числа. Для кода знака обычно выделяется крайний слева разряд. В знаковом разряде 1 соответствует минусу, а 0 – плюсу. Обычно положение запятой фиксируется либо после младшего (0 разряда), либо перед старшим, (n -1) разрядом. В первом случае числа представлены как целые, во втором – как правильные дроби. При этом запятая никак не обозначается, но в алгоритмах выполнения операций (умножение, деление) ее место учтено заранее одним из указанных способов.

В случае целых чисел минимальным по модулю отличным от нуля числом будет А min = 00…01, = 1, а максимальным, которому соответствуют единицы во всех n разрядах, – A mах = 11…11, = 2 n - 1, т. е. диапазон представления чисел в этом случае 1 ≤ | A | ≤ 2 n - 1.

n n -1 n -2      
± an -1 an -2 a 1 a 0 ,
  2 n -1 2 n -2 21 20  

В случае правильных дробей минимальным по модулю отличным от нуля числом будет А min=,00…01 = 2- n, а максимальным – А max =,11…11 = 1 - 2- n, т. е. диапазон представления чисел в этом случае 2- n ≤ | A | ≤ 1 - 2- n.

n   n -1 n -2    
±   a -1 a -2 a -(n -1) a - n
  , 2-1 2-2 2-( n -1) 2- n

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

2. Представление чисел с плавающей запятой

Для расширения диапазона представления чисел и уменьшения погрешности их задания используется нормальная форма записи.

В общем случае нормальная форма записи числа может быть представлена в виде, где M – мантисса числа; r – основание системы счисления; p – порядок числа. Мантисса | М | < 1, т.е. является правильной дробью, а порядок р – целое число.

Порядок (с учетом знака) показывает, на сколько разрядов и в какую сторону сдвинута запятая при замене формы записи числа с естественной на нормальную. Положение запятой в мантиссе M определяется величиной порядка p. С изменением порядка в большую или меньшую сторону запятая перемещается влево или вправо, т. е. «плавает» в изображении числа. Поэтому такую форму записи называют представлением чисел с плавающей запятой.

Формат числа с плавающей запятой включает: один разряд для представления знака порядка, q разрядов для представления порядка р, один разряд для представления знака мантиссы, т разрядов для представления мантиссы М.

n n -1 n -2 m +2 m +1 m   m -1 m -2    
± 2 q -1 2 q -2 21 20 ±   2-1 2-2 2-( m -1) 2- m
знак порядка порядок p q разрядов знак мантиссы , мантисса M m разрядов

В условиях ограничения разрядной сетки максимально возможную точность представления чисел имеет нормальная форма записи числа, при которой старшая цифра мантиссы является значащей, т.е. 1/ r ≤ | M | < 1. Такие числа называются нормализованными. Для двоичной системы счисления r = 2 и 0,5 ≤ | M | < 1, т.е. старший разряд мантиссы должен быть равен единице. Например: 0,10101100·2011 – нормализованное число, а 0,00101011·2101 – ненормализованное. Нормализованное представление чисел с плавающей запятой позволяет сохранить в мантиссе большее число разрядов с единицами, что повышает точность вычислений.

При выполнении действий над числами с плавающей запятой определенные операции выполняются как над мантиссами, так и над порядками. Для упрощения операций над порядками их сводят к действиям над целыми положительными числами (числами без знака), применяя представление чисел с плавающей запятой со смещенным порядком. В случае представления числа с плавающей запятой со смещенным порядком к его порядку p прибавляется целое число – смещение 2 q, где q – число двоичных разрядов, используемых для представления модуля порядка, p см = p + 2 q. Смещенный порядок будет всегда положительным. Для его представления необходимо такое же число разрядов, как и для модуля и знака порядка – q +1 разрядов. Важная особенность смещенных порядков состоит в том, что если для порядков p 1 и p 2, представляющих собой целые числа со знаками, выполняется соотношение p 1 > p 2, то и для положительных целых чисел, соответствующих смещенных порядков p см1 и p см2, также будет выполняться соотношение p см1 > p см2.

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

Наименьшее по модулю число с плавающей запятой с ненулевой нормализованной мантиссой может быть представлено единицей в старшем разряде с весом 2-1 и наибольшим по абсолютной величине отрицательным порядком:

,

а наибольшее по модулю число с плавающей запятой

.

Сравним диапазон представления чисел с фиксированной и плавающей запятой. Пусть, например, n = 31 (разрядная сетка состоит из 32 разрядов). В этом случае максимальное целое число с фиксированной запятой по абсолютному значению равно 231 - 1=2 147 483 647.

Для числа с плавающей запятой (n = 31, m = 24, q = 6 и два разряда используются для кодирования знаков мантиссы и порядка) максимальное значение числа равно (1 – 2-24) 264 – 1 ≈ 1× 263 ≈ 1019.

Из сравнения этих двух значений вытекает, что при одинаковом числе разрядов n форма с плавающей запятой обеспечивает более широкий диапазон представления чисел.

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

3. Погрешности представления чисел

Представление числовой информации в ЭВС, как правило, влечет за собой появление погрешностей (ошибок), величина которых зависит от формы представления чисел и от длины разрядной сетки.

Абсолютная погрешность представления – разность между истинным значением исходной величины А и ее значением, полученным из машинного изображения АМ, т.е..

Относительная погрешность представления – величина.

Все числа целого типа переводятся из одной системы счисления в другую точно (без погрешностей). Операции сложения, вычитания и умножения чисел целого типа также выполняются точно. Результат деления чисел целого типа дает целое частное и целый остаток.

Правильные дроби переводятся из одной системы счисления в другую не точно – с погрешностью. Некоторая величина в одной системе счисления может иметь конечное значение, а в другой системе счисления становится бесконечной величиной, например, дробь 1/10 имеет конечное десятичное представление, но, будучи переведена в двоичную систему счисления, становится бесконечной дробью 0,0001100110011... Однако эту погрешность нетрудно оценить, если известны истинные значения исходных чисел.

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

Абсолютная погрешность перевода десятичной дроби в систему с основанием r при использовании усечения (младшие цифры справа отбрасываются) определяется следующим выражением

.

Для двоичной системы счисления r = 2, и максимальное значение этой погрешности получается при ai = 1

,

т.е. максимальная абсолютная ошибка равна значению младшего разряда.

При использовании округления максимальная абсолютная ошибка не превышает половины значения младшего разряда

.

Для представления чисел в форме с фиксированной запятой абсолютное значение машинного изображения правильной дроби находится в диапазоне

2- n ≤ | A | Ф ≤ 1 - 2- n.

Следовательно, относительная погрешность представления для максимального значения числа равна

.

В современных ЭВС, как правило, n = 16…64, поэтому, откуда

.

Аналогично, для минимального значения:

,

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

Все числа с плавающей запятой представляют некоторые данные приближенно.

Для представления чисел в форме с плавающей запятой абсолютное значение мантиссы находится в диапазоне

0,5 ≤ | M | < 1 - 2- n,

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

Для нахождения погрешностей представления чисел в форме с плавающей запятой величину этой погрешности надо умножить на величину:

,

,

.

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

4. Кодирование двоичных чисел со знаком

Для машинного представления чисел со знаком используются три способа: прямой, дополнительный и обратный коды. При рассмотрении кодов будем считать, что разрядная сетка содержит n +1 двоичных разрядов, из которых n младших разрядов используются для задания значения числа. При изображении целых чисел точкой условно отделяют знаковый разряд от числовой части.


Понравилась статья? Добавь ее в закладку (CTRL+D) и не забудь поделиться с друзьями:  



double arrow
Сейчас читают про: