Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
АРХ. ИНФ. СИСТЕМ / ПОСОБИЕ .docx
Скачиваний:
24
Добавлен:
19.05.2015
Размер:
349.85 Кб
Скачать

6.4. Числа в форме с плавающей запятой – форматы «е» и «d»

Число с основанием «d» в форме с плавающей запятой выглядит следующим образом:

Х d =± d ±Pr · M d , (6.1)

где d – основание системы счисления; Pr – порядок числа; Мd – мантисса числа – дробное число, старшая цифра в котором отлична от нуля.

Формирование числа в форме с плавающей запятой начинается с записи мантиссы числа Md. Порядок числа Pr определяется параллельно с формированием мантиссы.

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

+3785,61810 = +10+4 · 0,378561810;

–0,003АС7Д16 = –16-2· 0,3АС7Д16;

+110110, 1011012 = 2+6·0,1101101011012.

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

  1. Знак числа.

  2. P r – порядок числа со знаком.

  3. М d – мантисса числа.

Основание системы счисления «d» регистрировать не надо, так как для определенного класса ЭВМ оно имеет одно то тоже значение ( для современных ЭВМ 4-ого поколения d = 16). Запятую или точку в мантиссе также можно не регистрировать, так как она также имеет фиксированное место. Форматы «Е» и «D» являются форматами постоянной длины: «Е» – 4 байта, «D» – 8 байтов (рис. 6.3).

Компоненты числа, представленного в форме с плавающей запятой, размещаются в полях форматов «Е» и «D» следующим образом:

1. Знак числа в обоих форматах регистрируется в нулевом разряде, кодировка такая же, как и в форматах «H» и «F»: «+» кодируется «0»-ем, «–» –« 1»-ей.

2. Для регистрации знака порядка числа отводится 1-й разряд, числового значения Pr –разряды со 2-го по 7-й, т. е. 6 двоичных разрядов. Тогда порядок числа Pr может принимать следующие значения:

– 1111112 ≤ P r ≤ + 1111112 ;

–6310 ≤ P r ≤ +6310 ( 6.2)

0 78 15 16 23 24 31

а )

0 78 15 16 2324 31 32 39 40 47 48 55 56 63

б)


0 1 2 3 4 5 6 7

Зн. Зн.

чис по

ла ряд

ка

в)

Рис. 6.3. Представление чисел в форме с плавающей запятой:

а – формат «Е», б – формат «D», в – младший байт форматов «Е» и «D»

Алгоритмы выполнения арифметических операций над числами, представленными в форме с плавающей запятой, требуют наличия только положительных порядков операндов, участвующих в операциях. Поэтому при вводе числовой информации в ЭВМ в форматах «Е» и «D» специальным программным средствам приходится увеличивать порядки чисел на 64 посредством умножения значений всех входных переменных на 1664. В результате таких действий в ОП ЭВМ осуществляется запись не порядков чисел, а уже скорректированных машинных порядков чисел Pm:

Pm= Pr + 64

Если ко всем трем частям неравенства (6.2) прибавить 6410 = 10000002, то получится диапазон для значений машинных порядков Pm чисел, представленных в форматах «Е» и «D».

–64 + 64 ≤ P r + 64 ≤ +63 + 64

110 ≤ P m ≤ 12710

00000012 ≤ P m ≤ 11111112

В машинном порядке Pm, в результате таких преобразований получается обратная кодировка знака порядка числа Pr : если Pr ≥ 0, то значение 1-го разряда равно «1», если Pr ≤ 0, то значение 1-го разряда принимает значение «0». Для сохранения числовой информации вне ЭВМ, при выводе результатов числа, зарегистрированные в форматах «Е» и «D», умножаются на 16-64, т. е. осуществляется обратный переход от машинных порядков Pm к порядкам чисел Pr.

3. Для регистрации мантиссы в формате «Е» отводятся разряды с 8-го по 31-й – три байта. В каждом байте 2 тетрады и, следовательно, можно зафиксировать по две 16-ричных цифры, т. е. в совокупности использование формата «Е» позволяет зарегистрировать шесть 16-ричных цифр мантиссы. В формате «D» для регистрации мантиссы используются разряды с 8-го по 63-й, 7 байтов, и, соответственно, можно зарегист-рировать четырнадцать 16-ричных цифр. Поскольку использование формата «D» обеспечивает внутри машинное представление четырнадцати 16-ричных цифр, а это около восемнадцати 10-ричных цифр вне ЭВМ, против шести 16-ричных и восьми 10-ричных цифр для формата «Е», можно сделать вывод о том, что использование формата «D» обеспечивает значительно большую точность вводимых исходных данных и результатов вычисления.

Макрокоманда DEСLARE для переменных, представленных в форме с плавающей запятой, выглядит следующим образом:

DСL [ имя переменной ] FLOAТ DECIMAL ( p ), (6.3)

0 ≤ p ≤ 8 – формат «Е»

9 ≤ p ≤ 16 – формат «D»

На основании информации, представленной в данном параграфе, можно сформулировать алгоритм формирования внутри машинного представления чисел, представленных в форме с плавающей запятой –форматы «Е» и «D»:

1. Перевести число из 10-ричной СС в 16-ричную СС.

2. Представить в форме с плавающей запятой (6.1).

3. Найти значение машинного порядка в двоичной системе счисления:

Pm = 10000002 + Pr

4. Сформировать содержимое младшего байта поля: разряды с 0-го

по 7-й.

5. Сформировать содержимое поля мантиссы, записывая по две тетрады двоичных разрядов (фактически по две 16-ричных цифры в каждый байт) слева направо.