
§26. Преобразователи кодов
При выполнении различных операций в ПК применяют несколько видов кодирования для удобства хранения, передачи и обработки информации. Задачу перекодировки решают преобразователи кодов. Как и любое логическое устройство, они характеризуются таблицей истинности, являющейся основанием для синтеза логической схемы.
Виды кодов
Двоичные коды
Двоично-десятичные коды, каждой цифре порядка соответствует его двоичный эквивалент, занимающий 4 позиции:
0
0000
10
0001 0000
1
0001
11
0001 0001
2
0010
12
0001 0010
3
0011
13
0001 0011
4
0100
14
0001 0100
5
0101
15
0001 0101
6
0110
16
0001 0110
7
0111
17
0001 0111
8
1000
18
0001 1000
9
1001
19
0001 1001
И так далее
Десятично-сбалансированые коды – десятичная цифра кодируется с помощью n-бит, где n>=4, например:
0101=0*23+1*22+0*21+1*20=5, код DCB
Код DCB с избытком 3, в предыдущем коде добавляется 3
Десятично-сбалансированные, самоопределяющиеся коды. Дополнение до какого-либо числа для проверки правильности кодировки или действия. Каждое число >4 – дополнение, сумма цифр всегда 15
число
код
число
код
0
0000
5
1111
1
0001
6
1110
2
0010
7
1101
3
0011
8
1100
4
0100
9
1011
Коды Грея – осуществляют переход от одного уровня к следующему изменением всего одной цифры. Числа представляются в простом двоичном коде. Например:
NA=A3A2A1A0 – двоичный код
NG=G3G2G1G0 – код Грея
Для преобразования используется функция – «исключающее ИЛИ», то есть
G
0=
A0
A1=А0А1’+А0’А1
G 1= A1 A2
G 2= A2 A3
G 3= A3 A0
ASCII – кодирование символов клавиатуры
Коды с обнаружением ошибок
и так далее
Частным случаем преобразователей кодов являются шифраторы и дешифраторы, преобразующие десятичное число в двоичное и обратно, соответственно.
§27 Шифраторы
За каждым входом шифратора закреплено определенное значение десятичного числа, при подаче на один из входов активного логического уровня, это значение преобразуется в двоичное. То есть шифратор должен иметь n выходов и 2n – входов. Если это утверждение верно, то такой шифратор называется полным, если число входов меньше, то неполный.
Нарисуем таблицу истинности: обозначим х –входы Q – выходы.
Х9 |
Х8 |
Х7 |
Х6 |
Х5 |
Х4 |
Х3 |
Х2 |
Х1 |
Х0 |
Q3 |
Q2 |
Q1 |
Q0 |
0 |
|
|
|
|
|
|
|
|
1 |
0 |
0 |
0 |
0 |
0 |
|
|
|
|
|
|
|
1 |
|
0 |
0 |
0 |
1 |
0 |
|
|
|
|
|
|
1 |
|
|
0 |
0 |
1 |
0 |
0 |
|
|
|
|
|
1 |
|
|
|
0 |
0 |
1 |
1 |
0 |
|
|
|
|
1 |
|
|
|
|
0 |
1 |
0 |
0 |
0 |
|
|
|
1 |
|
|
|
|
|
0 |
1 |
0 |
1 |
0 |
|
|
1 |
|
|
|
|
|
|
0 |
1 |
1 |
0 |
0 |
|
1 |
|
|
|
|
|
|
|
0 |
1 |
1 |
1 |
0 |
1 |
|
|
|
|
|
|
|
|
1 |
0 |
0 |
0 |
1 |
|
|
|
|
|
|
|
|
|
1 |
0 |
0 |
1 |
По таблице истинности запишем соответствующие ДНФ и КНФ
ДНФ:
Q
0=x1+x3+x5+x7+x9
Q1=x2+x3+x6+x7
Q2=x4+x5+x6+x7
Q3=x8+x9
КНФ:
Q0=x0x2x4x6x8
Q1=x0x1x4x5x8x9
Q2=x0x1x2x3x8x9
Q3=x0x1x2x3x4x5x6x7
Условное обозначение: