Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
Лабораторная работа №5 по информатике.doc
Скачиваний:
10
Добавлен:
03.12.2018
Размер:
80.38 Кб
Скачать
        1. Формат с фиксированной точкой

Форматы с фиксированной точкой применяется для представления целых чисел. Обычно используют 2 формата:

  • с обычной точностью (2 байта, короткий формат, H);

  • с двойной точностью (4 байта, длинный формат, F)

В первом случае для размещения двоичного кода используют 15 битов, во втором –31 бит. Во всех форматах знак числа занимает место перед старшим разрядом числа и кодируется двоичной цифрой, при этом код 0 означает знак "+", код 1 - знак "-". Это место разрядной сетки называется знаковым разрядом.

Рис. 3.1 Форматы чисел с фиксированной точкой

В IBM PC первые два формата называются целое слово (2 байта) и короткое целое (4 байта). Есть ещё один формат – длинное целое, который использует 8 байтов.

Важное замечание. Положительные и отрицательные числа представляются в формате с фиксированной точкой в дополнительном коде.

По первой шестнадцатеричной цифре можно определить знак числа Если первая цифра меньше 8, то число положительное, если ее значение oт 8 до F, то отрицательное.

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

        1. Формат с плавающей точкой

Для представления чисел в нормальной форме используются форматы разной длины. В общем случае в разрядной сетке форматов должны отводиться места для знака мантиссы (старший 31 разряд), знака порядка (предшествующий 30 разряд), значения порядка (например, 6 разрядов как в ЕС ЭВМ, с 29-го по 24-ый), в остальные 24 разряда (с 23-го по 0-ой) записывается мантисса числа. На рис. 4.4 представлена разрядная сетка в формате 4 байта.

31 30 29 24 23 1 0

Рис. 3.2. Примерный формат с плавающей точкой

В различных ЭВМ используются различные форматы с плавающей точкой.

В ЕС ЭВМ используются три формата: короткий Е (4 байта), длинный D (8 байт) и повышенной точности (16 байт). В СМ ЭВМ, а также в некоторых мини и микроЭВМ, например PDP-11, используются 2 формата: с обычной точностью (4 байта) и с двойной точностью (8 байт). Особенностями нормальной формы в ЕС и СМ ЭВМ являются следующие:

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

В ЕС ЭВМ во всех форматах 7 разрядов отводится под значение порядка и его знак. Следовательно, числовая ось порядков находится в диапазоне -26 ≤ P ≤ 26-1 или -64 ≤ P ≤ 63.

Смещенный порядок, называемый характеристикой, определяется смещением порядка на +26 = 6410 = 4016, т.е. характеристика Рх = Р + 4016 не имеет знака.

Характеристика может принимать значения в диапазоне 0 ≤ Рх ≤ 12710 = 7F16, и под ее значение отводятся 7 разрядов (27-1 = 127). Очевидно, если Рх = 4016,то Р = 0, если Рх < 4016 ,то порядок отрицательный (Р < 0), при Рх > 4016 — порядок положительный (Р > 0).

Максимальное число в формате Е: |A|max = (1 – 2-24 )×263 ≈ (210)6 ×23 ≈ (103)6×23 = 8×1018

В СМ ЭВМ в разрядной сетке под порядок отводится 8 двоичных разрядов (-27 ≤ P ≤ 27-1), под мантиссу — 23 (в формате двойной точности – 55 разрядов). Здесь также используется беззнаковый порядок, смещенный на 27=12810=2008=8016, который меняется в диапазоне 0 ≤ Pх ≤ 25510 = 3778 = FF16.

Максимальное число в СМ ЭВМ в формате обычной точности при Рmax =127 имеет значение:

|A|max = (1 – 2-23 )×2127 ≈ (210)12 ×27 ≈ (103)12×102 = 1038

Остальные форматы отличаются только разрядностью мантиссы.

2). В СМ ЭВМ есть еще одна особенность форматов с плавающей точкой. Так как старшая цифра нормализованной мантиссы должна быть 1, то это позволяет не хранить её, а только предполагать её наличие. Такое представление как бы увеличивает разрядность мантиссы (т.е. в операциях участвуют 24 (для чисел одинарной точности) и 56 разрядов (для чисел двойной точности)) а значит и точность расчетов.

В IBM PC (с процессором Intel 80x86) используется 3 формата с плавающей точкой:

  • короткое вещественное (КВ, 4 байта, смещенный порядок занимает 8 бит, мантисса – 23 бита, single);

  • длинное вещественное (ДВ, 8 байтов, смещенный порядок занимает 11 бит, мантисса – 52 бита, double);

  • временное вещественное (ВВ, 10 байтов, смещенный порядок занимает 15 бит, мантисса – 64 бита, extended).

Особенностями нормальной формы в IBM PC являются следующие:

  1. Мантисса всегда записывается в виде: 1,m1m2… Т.е. целая часть всегда равна 1 и в форматах КВ и ДВ прямо в мантиссе не представляется, а учитывается неявно при выполнении операций. В формате ВВ старший бит мантиссы представляется явно.

  2. Порядок также записывается в смещенном виде, однако величина смещения в разных форматах разная:

  • в КВ – 27-1=12710=1778=7F16,

  • в ДВ – 210-1=102310=17778=3FF16,

  • в ВВ – 214-1=1638310=377778=3FFF16.

Отсюда величина смещенного порядка лежит в пределах:

  • в КВ – 0 ≤ Pх ≤ 25410 = 3768 = FE16,

  • в ДВ – 0 ≤ Pх ≤ 204610 = 37768 = 7FE16,

  • в ВВ – 0 ≤ Pх ≤ 3276610 = 777768 = 7FFE16.

Получается, что для представления вещественных чисел используется только часть значений порядка. Так например, в форматах КВ и ДВ значение порядка FF16 и 7FF16 используется для кодирования ±∞, при этом в поле мантиссы все нули (+∞, если бит знака 0, -∞, если бит знака 1) и для обозначения «не чисел» (NAN – not a number), когда в поле мантиссы не нулевое значение.

Формат КВ (как и формат обычной точности в СМ ЭВМ) позволяет представить максимальное число ≈1038, формат ДВ уже – ≈10308, а формат ВВ – ≈104932. Точность представления чисел приближенно соответствует:

  • в КВ – 7-8 значащих десятичных цифр,

  • в ДВ – 15-16 значащих десятичных цифр,

  • в ВВ – 19-20 значащих десятичных цифр.

Формат ВВ обеспечивает максимальный рабочий диапазон значений вещественных чисел и является основным: в нем выполняются все операции арифметическим сопроцессором.