При спотвореннях окремих розрядів у каналі зв'язку на прийомній стороні замість кодової комбінації циклічного коду виявляється кодова комбінація
, (10)
де – многочлен помилок, що містить одиниці на тих позиціях, де є спотворення прийнятої комбінації.
У цьому випадку в результаті розподілу спотвореної кодової комбінації на утворюючий поліном одержимо:
(11)
де – залишок (синдром), обумовлений наявністю спотворень.
Існує декілька варіантів декодування циклічних кодів з виправленням помилок. Розглянемо табличний варіант, який може застосовуватись не лише для виправлення одиночних помилок, а й для всіх, що відповідають корегувальній здатності коду. Він полягає в тому, що для всіх варіантів многочлена помилок , які можуть бути виправлені при коді з утворюючим многочленом , заздалегідь підраховуються залишки (синдроми) . Результати записуються у таблицю, яка зберігається у блоці визначення місця помилки.
Після ділення прийнятої кодової комбінації на по величині синдрому з таблиці визначається многочлен помилок . Далі він додається до прийнятої комбінації, внаслідок чого створюється виправлена кодова комбінація :
|
|
. (12)
При технічній реалізації такого методу виправлення помилок в моменти часу, коли відбувається передача спотвореного розряду із вхідного регістра на вихід, у блоці визначення місця помилки формується коригувальний символ . Він додається по модулю 2 до прийнятого спотвореного розряду, у результаті чого спотворений розряд інвертується.
Приклад. Синдроми всіх одиночних помилок коду (7,4) з утворюючим многочленом = 1101 наведені у таблиці 5.
Нехай прийнята комбінація , тоді залишок
Таблиця 5
= / 101.
З таблиці 5 маємо, що залишку = 101 відповідає вектор помилок 0001000. Отже, виправлена кодова комбінація
1000011 0001000 = 1001011.
Якщо кількість помилок у прийнятій комбінації перевищує корегувальну здатність коду, то виправлення спотворень стає неможливим, тому що залишки будуть повторюватись. Крім того, якщо кількість помилок перевищує спроможність коду до виявлення помилок, то у деяких випадках многочлен помилок ділиться цілком на утворюючий поліном . Помилки при цьому зовсім не виявляються, а повідомлення сприймається як правильне.