мо кодову комбінацію двійкового циклічного коду F(x)= =Q(x)x3⊕R(x)= x6⊕x5⊕х4⊕x2 ® F = 1110100.
Покажемо процес виправлення однократної помилки. Для цього припустимо, що при передачі виникла однократна помилка, поліном та вектор якої відповідно E(x)= x3 та 0001000. Тоді поліном F*(x) прийнятої комбінації F*(x) = F(x)⊕E(x) =x6⊕x5⊕x4⊕⊕x3⊕x2 ® 1111100.
Декодер виконує перевірочне ділення F*(x) на той же твірний поліном P(x), який був використаний при кодуванні:
⊕ |
x6⊕x5⊕x4⊕x3⊕x2 |
x3⊕x⊕1 |
||||
x6⊕x4⊕x3 |
x3⊕x2⊕1 |
|||||
⊕ |
x5⊕x2 |
|||||
x5⊕x3⊕x2 |
||||||
⊕ |
x3 |
|||||
x3⊕x⊕1 |
||||||
x⊕1 |
. |
|||||
Отже, остача R(x) = x⊕1 або R = 011.
Оскільки остача від ділення не дорівнює нулю, робимо висновок про наявність помилки у прийнятій комбінації F*(x).
Для визначення місця помилки скористуємося методом гіпотез.
Крок 1. Висуваємо гіпотезу про помилку у молодшому розряді комбінації циклічного коду F*(x), тобто вважаємо, що поліном та вектор помилки відповідно E1(x) = 1 та E1= 0000001. Беремо суму за модулем 2 F*(x)⊕E1(x):
F*(x)⊕E1(x)=(x6⊕x5⊕х4⊕x3⊕x2)⊕1= x6⊕x5⊕х4⊕x3⊕x2⊕1;
ділимо отриману суму на P(x) з метою підтвердження ( у разі нульової остачі ) або спростування ( у разі ненульової остачі ) висунутої гіпотези: