Представление десятичных чисел

В повседневной жизни человек пользуется десятичной системой счисления. Для хранения и обработки десятичных чисел в цифровых устройствах их необходимо представить в виде двоичного кода. Так как алфавит десятичной системы счисления содержит 10 цифр, для записи каждой десятичной цифры выделяется слово, содержащее не менее четырех разрядов. Представление десятичного числа, в котором каждая десятичная цифра отображается в виде двоичных символов 0 и 1, будем называть двоично-десятичным кодом. Наиболее часто используется 4-разрядное слово, именуемое тетрадой или полубайтом. С помощью тетрады вместо требуемых 10 можно получить 24 = 16 различных комбинаций, составленных символов 0 и 1. Общее количество различных 4-разрядных кодов (тетрад), определяемое сочетаниями из 16 элементов по 10, составляет СЩ = 8008. Некоторые коды десятичных цифр приведены в табл. 2.6.

Таблица 2.6

Цифра

Код

8421

7421

2421

с изб. 3

75-31

53-21

За + 2

2 из 5

0

0000

0000

0000

0011

0000

0000

00010

11000

1

0001

0001

0001

0100

0001

0001

00101

01100

2

0010

0010

0010

0101

0110

0111

01000

00110

3

0011

0011

0011

0110

0111

1010

01011

00011

4

0100

0100

0100

0111

1010

0101

01110

10001

5

0101

0101

1011

1000

0100

1000

10001

10100

6

0110

0110

1100

1001

0101

1001

10100

01010

7

0111

1000

1101

1010

1000

1111

10111

00101

8

1000

1001

1110

1011

1001

1100

11010

10010

9

1001

1010

1111

1100

1110

1101

11101

01001

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

Приведенные в табл. 2.6 коды можно разбить по числу разрядов на две группы: 4-разрядные и 5-разрядные коды. Достоинство 4-разрядных кодов состоит в том, что при кодировании десятичных чисел используется минимальное количество разрядов. Введение дополнительного 5-го разряда позволяет обнаружить ошибки при передаче числовой информации по линиям связи при наличии помех.

В 5-разрядном коде 2 из 5 все кодовые комбинации содержат две единицы и три нуля. Поэтому изменение значения любого разряда на противоположное приведет к запрещенной кодовой комбинации, которая будет содержать:

  • • 1 единицу и 4 нуля при искажении любой единицы (вместо 1 принимается 0);
  • • 3 единицы и 2 нуля при искажении любого нуля (вместо 0 принимается 1).

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

Различают также весовые и невесовые коды.

К весовым кодам относятся 4-разрядные коды (тетрады) 8421, 7421, 2421, 75-31, 53-21, для которых значение десятичной цифры D определяется следующим выражением:

(2.11)

где dk – значение k-то разряда тетрады (dk = 0 или 1); стА – вес /г-го разряда тетрады в десятичной системе счисления;

k = 0,1, 2, 3. Отметим, что для кодов 75-31 и 53-21 вес 1-го разряда ст, (2.11) имеет отрицательное значение, равное соответственно -3 и -2.

Соотношение (2.11) позволяет:

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

Пример 2.9. Для кода 8421 выражение (2.11) имеет вид

где dk = О или 1, который соответствует записи десятичных чисел в системе счисления с основанием 2. Следовательно, разрешенные комбинации в коде 8421 являются двоичными эквивалентами десятичных цифр.

Пример 2.10. Соотношение (2.11) для кода 7421 имеет вид

(2.12)

Из (2.12) следует, что в коде 7421 десятичные цифры 0,1,2,3,4, 5,6 кодируется двоичными числами, так как d3 = 0. Для цифры 7 на основании (2.12) получаем следующий код: 7 = 1- 7 + 0- 4 + 0- 2 + + 0 • 1 = 1000.,; для цифры 8-8=1-7 + 0- 4 + 0- 2 + 1-1 = 10012; для цифры 9-9 = 1- 7 + 0- 4 + 1- 2 + 0-1 = 1010,.

Пример 2.11. Используя соотношение (2.11), определим значения разрядов двоично-десятичного кода 75-31 (табл. 2.7).

Таблица 2.7

Цифра

0

0 7 + 0 5-0-3 + 0 1

0000

1

0-7 + 0- 5- 0- 3 + 1 • 1

0001

2

0 7 + 1 -5-1-3 + 0 1

ОНО

3

0-7 + 1-5-1-3+11

0111

4

17 + 05-1-3 + 01

1010

5

0-7 + 1 -5-0-3 + 0 1

0100

6

0 7+1 -5-0-3+ 1 • 1

0101

7

1 -7 + 0- 5- 0- 3 + 0- 1

1000

8

1 -7 + 0- 5- 0- 3 + 1 • 1

1001

9

1-7 + 1-5-1-3 + 0 1

1110

Для невесовых кодов соотношение (2.11) не выполняется. К ним относятся код с избытком 3 (или 8421+3) и 5-разрядные коды За + 2 и 2 из 5.

Рассмотрим еще одно важное свойство некоторых двоично-десятичных кодов. Цифра Dj по отношению к Dk является дополнением до 9, если D- + Dk = 9. Взаимно дополняющими друг друга до девяти парами десятичных цифр являются следующие цифры: 0 и 9, 1 и 8, 2 и 7, 3 и б, 4 и 5. Если для двух десятичных цифри

выполняется условие

(2.13)

то дополнение может быть получено путем замены 0 на 1 и 1 на 0 разрядов цифры или инверсии разрядов: dj = dj к.

Свойством (2.13) обладают коды 2421, с избытком 3 и За + 2. Например, в коде 2421 паре взаимно дополняющих до девяти цифр 3 и 6 соответствуют комбинации ООН и 1100, каждая из которых образуется как инверсия другой.

Представление отрицательных двоично-десятичных чисел. Отрицательное "-разрядное двоично-десятичное числоможно представить в прямом, обратном и дополнительном кодах: (прямой код); (обратный код); (2.14) (дополнительный код), где– тетрады; 1– значение знакового разряда для отрицательных чисел; – дополнение до 9, обладающее свойством

(2.15)

Из соотношений (2.14) следует, что для представления отрицательных двоично-десятичных чисел:

  • • в прямом коде достаточно изменить значение знакового разряда;
  • • в обратном коде необходимо преобразовать тетрады согласно условию (2.15). Как указывалось выше, для кодов 2421, с избытком 3 и За + 2, обладающих свойством (2.13), обратный кол получается в результате поразрядной инверсии тетрад, т.е.;
  • • в дополнительном коде (дополнение до 10) следует сначала получить обратный код, а затем прибавить 1.

Пример 2.12. Пользуясь изложенными правилами, запишем в обратном и дополнительном кодах двоично-десятичное число -841 = -1110 0100 0001, заданное в коде 2421:

Для двоично-десятичных чисел в коде 8421 условие (2.15) не выполняется. В результате поразрядной инверсии тетрад получается дополнение до 15 вместо 9. Например, инверсия числа 5Ш = 01012 дает число 10102 = 101Ц, дополняющее 5 до 15. Для представления двоично-десятичного числа в обратном коде поступают следующим образом:

  • • ко всем тетрадам двоично-десятичного числа прибавляют двоичное число 0110 (6);
  • • над полученной суммой выполняют операцию инверсии;
  • • в знаковый разряд записывают 1.

Для дополнительного кода используют выражение

Пример 2.13. Пользуясь изложенными правилами, запишем в обратном и дополнительном кодах двоично-десятичное число -841 = -1000 0100 0001, заданное в коде 8421:

 
< Пред   СОДЕРЖАНИЕ     След >