Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
Учебное_пособие_информатика_v.doc
Скачиваний:
44
Добавлен:
04.11.2018
Размер:
606.21 Кб
Скачать

3. 4. Коды представления чисел в эвм

Для представления со знаком в ЭВМ применяют прямой, обратный и дополнительный коды.

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

3.4.1. Прямой код

В бит S помещается знак числа, а остальные биты используются для абсолютного значения числа.

Пример Десятичные числа и их эквивалентное представление в прямом 4-разрядном коде.

Таблица 5

Десятичное число

Прямой код

Обратный код

Дополнительный код

Смещенный код

7

0111

0111

0111

1111

6

0110

0110

0110

1110

5

0101

0101

0101

1101

4

0100

0100

0100

1100

3

0011

0011

0011

1011

2

0010

0010

0010

1010

1

0001

0001

0001

1001

0

0000

1000

0000

1111

0000

1000

-1

1001

1110

1111

0111

-2

1010

1101

1110

0110

-3

1011

1100

1101

0101

Окончание таблицы 5

Десятичное число

Прямой код

Обратный код

Дополнительный код

Смещенный код

-4

1100

1011

1100

0100

-5

1101

1010

1011

0011

-6

1110

1001

1010

0010

-7

1111

1000

1001

0001

-8

1000

0000

Число в прямом коде имеет два представления нуля: 0000 и 1000. Диапазон представления чисел в прямом коде от –(24-1- 1) до (24-1- 1), или от –7 до 7. В случае n-разрядного кода диапазон представления чисел от

–(2n-1- 1) до (2n-1- 1).

Двоичные наборы 0 1 2 2n-1-1 2n-1 2n-1+1

Числа -(2n-1-1) -1 0 1 2 +(2n-1-1)

Рис. 2

С “компьютерной” точки зрения у прямого кода есть два недостатка:1) два представления нуля; 2) операция алгебраического сложения требует анализа знаков операндов и выбора фактической операции сложения или вычитания. Указанные недостатки привели к тому, что прямой код иногда применяется при вводе и выводе данных.

Определение Прямой код двоичного числа определяется как

 X при X ≥ 0;

Xпр = 

 А+│X│ при X ≤ 0,

(9)

где А – величина, равная весу старшего разряда сетки (для дробей А =1, а для целых чисел А = 2n-1).

Пример

n =5

12 Xпр = 01100

-12 25-1 + 12 Xпр =11100