Меню
Главная
Авторизация/Регистрация
 
Главная arrow Информатика arrow Информатика 2015

3.2. Представление данных в ЭВМ

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

Примером записи в естественной форме может служить вещественное число 173,856. Для записи числа в естественной форме машинное слово (операнд) делится на две части (на два поля). Первое ноле отводится для записи целой части числа, второе — для записи дробной части числа. Старший разряд машинного слова используется для указания знака числа. Разряды машинного слова нумеруются справа - налево, начиная с нуля. В вычислительной технике принято отделять целую часть числа от дробной части точкой. Так как положение точки между целой и дробной частями числа чётко определено, го такое представление чисел называют представлением с фиксированной точкой.

На следующем рисунке дана иллюстрация формата чисел с фиксированной точкой.

Недостатком формы с фиксированной точкой является малый диапазон представления чисел. В современных ЭВМ в этой форме записывают только целые числа. При этом отпадает необходимость отводить ноле для записи дробной части числа (см. следующий рисунок).

Разряд кода числа, в котором размещается знак, называется знаковым разрядом. Знаковый разряд размещается в старшем разряде машинного слова. Знак положительного числа кодируется двоичной цифрой 0, а знак отрицательного числа - цифрой 1.

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

где ш — мантисса числа; р — порядок; d — основание системы счисления.

Приведём пример записи числа в нормальной форме:

Порядок р изменяет местоположение точки в мантиссе. В зависимости от значения порядка р точка перемещается (плавает) по мантиссе. Например, пусть т =0.3, основание системы счисления d =10, а порядок р будем брать разным:

Рассматриваемая форма представления чисел называется формой с плавающей точкой. Из приведённого примера видно, что благодаря изменению порядка точка перемещается (плавает) но мантиссе. При этом если порядок отрицательный, точка смещается но мантиссе влево, а если положительный, го - вправо.

В нормальной форме машинное слово делится на два поля. В одном поле записывается мантисса числа, а во втором — указывается порядок числа. Следующий рисунок иллюстрирует форму числа с плавающей точкой на примере 32-х разрядного машинного слова.

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

Последовательность нескольких битов или байтов называют полем данных [4]. В ЭВМ используют ноля постоянной и переменной длины.

Перечислим поля постоянной длины: полуслово — 1 байт; слово — 2 байта; двойное слово — 4 байга; расширенное слово — 8 байт.

Поля переменной длины могут иметь любой размер от 1 до 256 байт. При этом поле должно состоять из целого числа байтов.

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

Пример L Записать число -193ю =-110000012 в формате слова со знаком и фиксированной точкой.

Решение.

N разряда

15

14

13

12

11

10

9

8

7

6

5

4

3

2

1

0

Число

1

0

0

0

0

0

0

0

1

1

0

0

0

0

0

1

Примечание.

В старшем разряде (пятнадцатом) указан знак числа.

Для представления как положительных, гак и отрицательных порядков применяют смещённый порядок. При этом машинный порядок Мр формируют со смещением на 64 разряда но отношению к фактическому порядку р: Мр =р +64. Это сделано для того чтобы нс отводить отдельный разряд иод знак порядка. При фактическом порядке р, равном нулю, машинный порядок Мр равен 64, а при фактическом порядке равном -H53D машинный порядок равен своему максимальному значению 127D. Для отрицательного порядка - 64D машинный порядок равен нулю. Таким образом, и положительные и отрицательные порядки представляют только положительными числами.

Пример Z Записать число -193]о в формате двойное слово и плавающей точкой.

Решение.

Переведём десятичное число в двоичную СС.

-193io =-110000012 =-0.11000001*28.

Заметим, что целая часть мантиссы должна быт ь равна нулю, а первый знак после точки должен быть равен единице.

Здесь мантисса т =-0.11000001, факт ический порядок р =8ю =10002.

Машинный порядок: Мр =р +64=1000^ +10000002=10010002.

Знак

чист

Порядок 8D= 1000В

Мантисса

0.11000001 в

N

разряда

СП

О

СП

о

СЧ

00

сч

сч

VD

сч

сч

ч*

С-1

СП

сч

сч

сч

сч

О

сч

Os

00

SO

...

О

Число

1

1

0

0

1

0

0

0

1

1

0

0

0

0

0

1

0

0

0

Двоично-десятичная система счисления получила большое распространение в современных ЭВМ ввиду лёгкости перевода в десятичную систему счисления и обратно. Она используется при решении задач учётностатистического характера. В этой системе счисления все десятичные цифры отдельно кодируются четырьмя двоичными цифрами (тетрадами) и в таком виде записываются последовательно друг за другом.

Двоично-дссягичныс числа могут быть представлены в ЭВМ полями переменной длины в так называемых упакованном и распакованном форматах.

Пример 3. Записать десятичное число 9703 в двоично-десятичной системе счисления.

Решение.

1001

0111

0000

ООН

Таким образом, перевод десятичного числа 9703D в двоично- десятичную СС дал такой результат: 1001011100000011. Этот перевод напоминает перевод шестнадцатеричных чисел в двоичную СС,

В упакованном формате для каждой десятичной цифры от водится по 4 двоичных разряда, при этом знак числа кодируется в крайнем правом полубайте числа. Принят следующий порядок кодировки: код 1100 означает знак "+", а 1101 — знак

Структура поля двоично-десятичного упакованного формата:

Цф

Цф

...

Цф

Знак

Здесь и далее: Цф — цифра, Знак — знак числа.

Упакованный формат используется обычно в ЭВМ при выполнении операций сложения и вычитания двоично-десятичных чисел.

Пример 4 Представить число -193D в упакованном формате.

Решение.

0001

1001

ООН

1101

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

Структура ноля распакованного формата:

Зона |

Цф

Зона

ИФ

...

Зона

Цф

Знак

Цф

Распакованный формат используется при вводе-выводе информации в ЭВМ, а также при выполнении операций умножения и деления двоично- десятичных чисел.

Пример 5. Представить число -193D в распакованном формате. Решение.

ООН

0001

ООН

1001

1101

ООН

 
Посмотреть оригинал
< Пред   СОДЕРЖАНИЕ ОРИГИНАЛ   След >
 

Популярные страницы