24
2. Корректирующие коды
2.1. Основные понятия
Помехоустойчивыми (корректирующими) называются коды,
позволяющие обнаружить и исправить ошибки в кодовых комбинациях.
Отсюда и деление кодов на две большие группы: 1) коды с обнаружением
ошибок; 2) коды с обнаружением и исправлением ошибок.
Принципы обнаружения и исправления ошибок кодами проиллюстрируем
с помощью геометрической модели трехразрядного двоичного кода (см.
рис. 1.6). Если использовать все восемь кодовых
комбинаций, записанных в
вершинах куба, то образуется двоичный код на все сочетания. Как было
показано выше, такой код является непомехоустойчивым. Если же уменьшить
число используемых комбинаций с восьми до четырех, то появиться
возможность обнаружения одиночных ошибок. Для этого выберем только такие
комбинации, которые отстоят друг от друга на расстояние d=2,
например, 000,
110, 011 и 101. Остальные кодовые комбинации не используются. Если будет
принята комбинация
100 , то очевидно, что при ее приеме произошла одиночная
ошибка. Представленные комбинации построены по определенному правилу, а
именно содержат четное число единиц, а принятая комбинация
100 – нечетное.
Можно утверждать, что комбинация
100 образовалась при искажении разряда
одной из разрешенных комбинаций, но определить, какая именно комбинация
искажена, невозможно. Поэтому такие или подобные им коды называют кодами
с обнаружением ошибок. Таким образом, в помехозащищенных кодах есть
комбинации разрешенные, составленные по определенному правилу, и
x
i
P(x
i
) Объединение сообщений Код
x
1
0,35 0,35 0,35 0,35 0,35 0,35 0,37 0,63 11
x
2
0,15 0,15 0,15 0,17 0,20 0,28 0,35 0,37 101
x
3
0,13 0,13 0,13 0,15 0,17 0,20 0,28 100
x
4
0,09 0,09 0,11 0,13 0,15 0,17 010
x
5
0,09 0,09 0,09 0,11 0,13 001
x
6
0,08 0,08 0,09 0,09 000
x
7
0,05 0,06 0,08 0110
x
8
0,04 0,05 01111
x
9
0,02 01110
0
0
0
0
0
0
0
0
1
1
1
1
1
1
1
1
1
Построение кода Хаффмана
Таблица 1.6