КОРРЕКТИРУЮЩИЕ КОДЫ
помехоустойчивые коды, коды обнаружения и исправления ошибки,
коды,
позволяющие по имеющейся в кодовой комбинации избыточности
обнаруживать
и исправлять определённые ошибки, появление к-рых приводит к образованию
ошибочных или запрещённых комбинаций. Применяются при передаче и обработке
информации в вычислит, технике, телеграфии, телемеханике и технике связи,
где возможны искажения сигнала в результате действия различного рода помех.
Кодовые слова К. к. содержат информац. и проверочные разряды (символы).
В процессе кодирования при передаче информации из информац. разрядов
в соответствии с определёнными для каждого К. к. правилами формируются
дополнит, символы - проверочные разряды. При декодировании из принятых
кодовых слов, по тем же правилам вновь формируют проверочные разряды и
сравнивают их с принятыми; если они не совпадают, значит при передаче произошла
ошибка. Существуют коды, обнаруживающие факт искажения сообщения, и коды,
исправляющие ошибки, т. е. такие, с помощью к-рых можно восстановить первичную
информацию.
В качестве
примера рассмотрим код Хэмминга. Пусть требуется передать нек-рое слово
1010. При кодировании оно будет представлено как 1011010, где 1-й, 2-й
и 4-й разряды проверочные (слева направо 101), а остальные информационные.
Если при передаче произошла ошибка, напр, в 3-м разряде вместо 1 получен
0, то при декодировании проверочные разряды примут значения: 1-й (младший)
- 1, 2-й - 1, 4-й - 0 (т. е. 011). Несовпадение кодовых комбинаций проверочных
разрядов не только сигнализирует о наличии ошибки, но и указывает номер
искажённого разряда (011-3 в двоичном коде).
Корректирующая
и обнаруживающая способность кодов зависит от кодового расстояния d
между
словами, численно равного минимальному числу ошибок, к-рое может превратить
одно слово в другое. Напр., имеется кодовая комбинация: 0111100; 0100101;
0010110. Первая группа (слово) отличается от второй в трёх разрядах, вторая
от третьей - в четырёх разрядах, первая от третьей - в трёх разрядах. Минимальное
расстояние d между этими словами равно 3. Если в первом слове произойдёт
3 ошибки, то оно может превратиться либо во второе, либо в третье слово;
при декодировании такая ошибка не будет обнаружена. Макс.число ошибок,
к-рое в данном случае может быть обнаружено, равно 2. Если в первом слове
произошла ошибка во втором разряде, то полученное слово отличается от второго
в четырёх разрядах, от третьего - в двух разрядах, от первого - в одном
разряде. Согласно максимального правдоподобия методу, при декодировании
делается вывод, что, вероятнее всего, передавалось первое слово. Для правильного
декодирования необходимо, чтобы макс, число ошибок в передаваемом слове
превращало его в слово, отличающееся от исходного в наименьшем числе разрядов.
Чтобы исправлять все комбинации из ? ошибок, необходимо и достаточно, чтобы
d>= 2t+ 1.
Ошибки в передаваемых
словах могут возникать вследствие либо независимых искажений разрядов (в
этом случае применяют, напр., коды типа кода Хэмминга), либо искажений
группы рядом стоящих разрядов (для таких случаев разработаны коды, исправляющие
одиночные пачки ошибок, и коды, исправляющие более одной пачки ошибок);
для обнаружения ошибок в процессе вычислений на ЭВМ разработаны т. н. арифметич.
коды.
Лит.: Питерсон
У., Коды, исправляющие ошибки, пер. с англ., М., 1964. Г. Н. Оныкий.
А Б В Г Д Е Ё Ж З И Й К Л М Н О П Р С Т У Ф Х Ц Ч Ш Щ Ъ Ы Ь Э Ю Я