Достаточно часто перед разработчиками цифровой аппаратуры встаёт обратная по сравнению с декодированием задача. Требуется преобразовать восьмеричный или десятичный линейный код в двоичный. Линейный восьмеричный код может поступать с выхода механического переключателя. Устройство, преобразующее линейный восьмеричный код в двоичный называется шифратором. Составим таблицу истинности такого устройства.
Таблица 1. Таблица истинности восьмеричного шифратора (кодера)
Входы | Выходы | |||||||||
№ комбинации | 1 | 2 | 3 | 4 | 5 | 6 | 7 | A2 | A1 | A0 |
0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 |
1 | 1 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 1 |
2 | 0 | 1 | 0 | 0 | 0 | 0 | 0 | 0 | 1 | 0 |
3 | 0 | 0 | 1 | 0 | 0 | 0 | 0 | 0 | 1 | 1 |
4 | 0 | 0 | 0 | 1 | 0 | 0 | 0 | 1 | 0 | 0 |
5 | 0 | 0 | 0 | 0 | 1 | 0 | 0 | 1 | 0 | 1 |
6 | 0 | 0 | 0 | 0 | 0 | 1 | 0 | 1 | 1 | 0 |
7 | 0 | 0 | 0 | 0 | 0 | 0 | 1 | 1 | 1 | 1 |
Ещё одним источником линейного восьмеричного кода могут стать аналоговые компараторы с различными порогами срабатывания. Такая линейка компараторов может служить для преобразования аналогового сигнала в цифровой код. Однако двоичный код более компактен. Поэтому требуется преобразователь кода. Таблица истинности такого устройства несколько отличается от приведённой в таблице 1. В данном случае входной код называется термометрическим. Микросхемы шифраторов обычно проектируются таким образом, чтобы они могли преобразовывать любой вариант входного кода в двоичный код. Так как часть бит на входе шифратора может принимать значение как логического нуля, так и логической единицы, то такие биты в таблице истинности обозначаем символом 'X'. Новая таблица истинности шифратора приведена в таблице 2.
Таблица 2. Таблица истинности десятичного шифратора (кодера).
Входы | Выходы | |||||||||
№ комбинации | 1 | 2 | 3 | 4 | 5 | 6 | 7 | A2 | A1 | A0 |
0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 |
1 | 1 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 1 |
2 | 1 | 1 | 0 | 0 | 0 | 0 | 0 | 0 | 1 | 0 |
3 | 1 | 1 | 1 | 0 | 0 | 0 | 0 | 0 | 1 | 1 |
4 | 1 | 1 | 1 | 1 | 0 | 0 | 0 | 1 | 0 | 0 |
5 | 1 | 1 | 1 | 1 | 1 | 0 | 0 | 1 | 0 | 1 |
6 | 1 | 1 | 1 | 1 | 1 | 1 | 0 | 1 | 1 | 0 |
7 | 1 | 1 | 1 | 1 | 1 | 1 | 1 | 1 | 1 | 1 |
Таблицы истинности можно объединить. В этом случае ячейки таблицы, где неважно, будет ли записан ноль или будет записана единица, помечены символом 'X'.
Таблица 3. Таблица истинности восьмеричного универсального шифратора (кодера).
Входы | Выходы | |||||||||
№ комбинации | 1 | 2 | 3 | 4 | 5 | 6 | 7 | A2 | A1 | A0 |
0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 |
1 | 1 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 1 |
2 | X | 1 | 0 | 0 | 0 | 0 | 0 | 0 | 1 | 0 |
3 | X | X | 1 | 0 | 0 | 0 | 0 | 0 | 1 | 1 |
4 | X | X | X | 1 | 0 | 0 | 0 | 1 | 0 | 0 |
5 | X | X | X | X | 1 | 0 | 0 | 1 | 0 | 1 |
6 | X | X | X | X | X | 1 | 0 | 1 | 1 | 0 |
7 | X | X | X | X | X | X | 1 | 1 | 1 | 1 |
Теперь можно составить схему устройства. То, что практически во всех строках есть неопределённые значения, позволяет значительно упростить схему восьмеричного кодера. Результирующая схема восьмеричного кодера приведена на рисунке 1.
Рисунок 1. Принципиальная схема восьмеричного кодера
В настоящее время шифраторы выпускаются в виде отдельных микросхем или используются в виде готовых блоков составе других микросхем, таких как параллельные АЦП. Условно-графическое обозначение шифратора приведено на рисунке 2. В качестве примера шифраторов можно назвать такие микросхемы отечественного производства как К555ИВ1 и К555ИВ3.
Рисунок 2. Условно-графическое обозначение восьмеричного шифратора