необходимо заранее обусловливать, какая комбинация соответствует данной цифре. В таблице 1.1 приведены кодовые комбинации, соответствующие представлению десятичных цифр в различных двоично-десятичных кодах.
Коды I – IV, VI, VII являются взвешенными, коды V и VIII –
невзвешенными.
Таблица 1.1
Некоторые двоично-десятичные коды
|
Несамодополняющиеся коды |
Самодополняющиеся |
||||||
|
Коды |
|
||||||
|
|
|
|
|
|
|
||
(Х)10 |
I |
II |
III |
IV |
V |
VI |
VII |
VIII |
|
8421 |
6121 |
5211 |
4221 |
невзве- |
2421 |
4221 |
с избытком 3 |
|
|
|
|
|
шенный |
|
|
|
0 |
0000 |
0000 |
0000 |
0000 |
0000 |
0000 |
0000 |
0011 |
1 |
0001 |
0001 |
0001 |
0001 |
0001 |
0001 |
0001 |
0100 |
2 |
0010 |
0010 |
0011 |
0010 |
0010 |
0010 |
0010 |
0101 |
3 |
0011 |
0011 |
0101 |
0011 |
0011 |
0011 |
0101 |
0110 |
4 |
0100 |
0100 |
0111 |
0110 |
0110 |
0100 |
1000 |
0111 |
5 |
0101 |
0101 |
1000 |
0111 |
0111 |
1011 |
0111 |
1000 |
6 |
0110 |
1000 |
1001 |
1010 |
1110 |
1100 |
1010 |
1001 |
7 |
0111 |
1001 |
1011 |
1011 |
1111 |
1101 |
1101 |
1010 |
8 |
1000 |
1010 |
1101 |
1110 |
1100 |
1110 |
1110 |
1011 |
9 |
1001 |
1011 |
1111 |
1111 |
1101 |
1111 |
1111 |
1100 |
Коды VI–VIII называются самодополняющимися кодами.
Дополняющие свойства этих кодов заключаются в том, что двум десятичным цифрам, сумма которых равна 9, соответствуют две дополняющие комбинации. Например, числу 3 в коде 2421 соответствует комбинация 0011,
а числу 6, являющемуся дополнением числа 3 до 9, – комбинация 1100. С
самодополняющихся кодах дополнение возникает простой заменой единицы нулем и нуля единицей. Самодополняющимся кодом является также невзвешенный код с избытком 3. Он получается добавлением числа
(3)10 = (0011)2 к числу в коде 8421 и удобен для арифметических операций,
так как при сложении довольно просто можно определить необходимость
коррекции результата. А так как это самодополняющийся код, то он может быть использован при вычитании, основанном на сложении в обратном и дополнительном кодах.
Типовые коды, часто использующиеся в цифровой электронике
Кроме представленных двоично-десятичных кодов на практике применяются и другие как четырехразрядные (четырехэлементные) коды, так и коды с большим числом разрядов.
Код Грея. Этот код относится к циклическим кодам,
характеризующимся тем, что комбинации двоичных цифр, отображающие числа, которые отличаются друг от друга на единицу, разнятся только в одном разряде. Это свойство кода Грея весьма ценно для преобразователей линейного перемещения или кругового движения какого-либо устройства в цифровой код, так как погрешность не превышает единицы младшего разряда.
Код Грея легко получается из натурального двоичного кода путем суммирования по модулю два цифр соседних разрядов. Если число x3 x2 x1 x0
– представление числа Х в двоичной системе счисления (в натуральном двоичном коде), а число y3 y2 y1 y0 – представление того же числа в коде Грея,
то между ними существуют следующие соотношения:
y3 = x3; |
x3 = y3; |
|
y2 = x3 x2; |
x2 = y3 y2; |
|
y1 = x2 x1; |
x1 = y3 y2 y1; |
(1.2) |
y0 = x1 x0; |
x0 = y3 y2 y1 y0. |
|
Код Грея, полученный с помощью выражений (1.2), представлен в таблице 1.2. Этот код является неизбыточным кодом.
Таблица 1.2
Код Грея
Число |
Натуральный двоичный код (8421) |
Код Грея |
|
|
||||
S |
x3 |
x2 |
x1 |
x0 |
y3 |
y2 |
y1 |
y0 |
0 |
0 |
0 |
0 |
0 |
0 |
0 |
0 |
0 |
1 |
0 |
0 |
0 |
1 |
0 |
0 |
0 |
1 |
2 |
0 |
0 |
1 |
0 |
0 |
0 |
1 |
1 |
3 |
0 |
0 |
1 |
1 |
0 |
0 |
1 |
0 |
4 |
0 |
1 |
0 |
0 |
0 |
1 |
1 |
0 |
5 |
0 |
1 |
0 |
1 |
0 |
1 |
1 |
1 |
6 |
0 |
1 |
1 |
0 |
0 |
1 |
0 |
1 |
7 |
0 |
1 |
1 |
1 |
0 |
1 |
0 |
0 |
8 |
1 |
0 |
0 |
0 |
1 |
1 |
0 |
0 |
9 |
1 |
0 |
0 |
1 |
1 |
1 |
0 |
1 |
10 |
1 |
0 |
1 |
0 |
1 |
1 |
1 |
1 |
11 |
1 |
0 |
1 |
1 |
1 |
1 |
1 |
0 |
12 |
1 |
1 |
0 |
0 |
1 |
0 |
1 |
0 |
13 |
1 |
1 |
0 |
1 |
1 |
0 |
1 |
1 |
14 |
1 |
1 |
1 |
0 |
1 |
0 |
0 |
1 |
15 |
1 |
1 |
1 |
1 |
1 |
0 |
0 |
0 |
Код Джонсона. Последовательность чисел в этом коде моделируется односторонним последовательным заполнением его разрядов вначале единицами, а затем нулями (таблица 1.3). Код Джонсона легко формируется с помощью регистров сдвига и легко дешифруется.
Таблица 1.3
S |
Код Джонсона |
Код “1 из 8” |
0 |
0 0 0 0 |
0 0 0 0 0 0 0 1 |
1 |
0 0 0 1 |
0 0 0 0 0 0 1 0 |
2 |
0 0 1 1 |
0 0 0 0 0 1 0 0 |
3 |
0 1 1 1 |
0 0 0 0 1 0 0 0 |
4 |
1 1 1 1 |
0 0 0 1 0 0 0 0 |
5 |
1 1 1 0 |
0 0 1 0 0 0 0 0 |
6 |
1 1 0 0 |
0 1 0 0 0 0 0 0 |
7 |
1 0 0 0 |
1 0 0 0 0 0 0 0 |
Код “1 из m”. Весьма интересным кодом является код “1 из m”,
представленный для случая m=8 в табл. 1.3. Этот код характерен тем, что в любой кодовой комбинации присутствует только одна единица, что позволяет легко находить ошибки в случае искажения кода, и не требуется его дешифрация. Данный код, как и код Джонсона, является избыточным,
требующим для своего изображения больше разрядов, чем соответствующие неизбыточные коды.
Кроме рассмотренных кодов существуют также другие самые разнообразные избыточные и неизбыточные коды.