В линейных (систематических) кодах информационные символы при кодировании не изменяются, а проверочные символы получаются в результате суммирования по модулю 2 определенного числа информационных символов. Запишем разрешенную кодовую комбинацию систематического кода (n,k)
,
где – множество информационных символов;
– множество проверочных символов.
Тогда, ,
где , j=– весовые коэффициенты принимающие значения 0 или 1 в зависимости от того, участвует или нет данный информационный символ в формировании проверочного символа .
Обнаружение и исправление ошибок систематическим кодом сводится к определению и последующему анализу синдрома или вектора ошибок.
В медицине термин синдром используют для обозначения сочетания признаков, характеризующих определенное болезненное состояние организма.
Под синдромом понимают совокупность символов сформированную, путем сложения по модулю 2 принятых проверочных символов и вычисленных проверочных символов
Вычисленные символы
Появление одной единицы в синдроме связано с ошибками в проверочной части кодовой комбинации.
100 → ошибка в ,
010→ ошибка в ,
001→ ошибка в .
А появление большего числа единиц в синдроме связано с ошибками в информационной части.
Присвоим информационным символам с ошибками оставшиеся синдромы в порядке возрастания их двоичных чисел (по существу безразлично, какие двоичные числа можно присваивать информационным символам):
011→ ошибка в ,
101→ ошибка в ,
110→ ошибка в ,
111→ ошибка в .
Итак, каждому символу кодовой комбинации соответствует двоичное число, представляющее синдром:
Синдром | Символ кодовой комбинации с ошибкой | |
нет ошибок | ||
b3 | ||
b2 | ||
a1 | ||
b1 | ||
a2 | ||
a3 | ||
a4 | ||
Осталось определить весовые коэффициенты . Для этого необходимо подобрать их так, чтобы при возникновении ошибки в - символе появлялся бы соответствующий этой ошибке синдром.
Например, для появления синдрома 011, соответствующего ошибке в