Составители:
Рубрика:
27
2.2. Линейные коды для коррекции ошибок
при передаче сообщений
Одним из классов кодов, обнаруживающих или исправляющих ошибки
при передаче сообщений в каналах связи, являются линейные коды. В
качестве входного алфавита используются полиномы конечного поля
Галуа GF(q), где q = p
h
; p – простое число; h – целое. Если V
n
– вектор-
ное пространство размерности n над полем GF(q), то подпространства
размерности k пространства V
n
называются p – ичными линейными
кодами длины n с k информационными символами или (n, k) кодами.
При p = 2 эти коды называются групповыми кодами.
Пример1. Пусть число разных передаваемых символов равно
2
n–1
, например, при передаче двоичных кодов десятичных цифр можно
взять n = 5. Образуем двоичные последовательности вида: (x
1
, x
2
, x
3
,
…, x
n-1
) и сопоставим каждую последовательность с одним из переда-
ваемых символов. Сформируем еще один символ x
n
по следующему
правилу: x
n
= x
1
⊕ x
2
⊕ x
3
⊕…⊕ x
n-1
, где операция “⊕” означает сложе-
ние по модулю 2. Если при передаче сообщений произошла ошибка в
каком-либо одном разряде, то сумма x
n
⊕ x
1
⊕ x
2
⊕ x
3
⊕…⊕ x
n-1
станет
четной, если была изначально нечетной или наоборот. Такая проверка
позволяет обнаружить одиночную ошибку (вообще говоря, все ошибки
нечетной кратности).
Пример 2. Пусть требуется передавать 16 различных сообще-
ний (например, букв или символов). Закодируем эти сообщения 4-х раз-
рядными двоичными кодами и поставим им в соответствие последова-
тельность: x
3
, x
5
, x
6
, x
7
. Зарезервируем дополнительные разряды x
1
, x
2
,
x
4
для контроля. Будем вычислять значения контрольных разрядов по
следующему правилу
1
2
3
4
5
6
7
1010101
0110011 .
0001111
x
x
x
x
x
x
x
Страницы
- « первая
- ‹ предыдущая
- …
- 25
- 26
- 27
- 28
- 29
- …
- следующая ›
- последняя »