Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
Gruppovye_kody_pravlenny.docx
Скачиваний:
1
Добавлен:
01.07.2025
Размер:
163.21 Кб
Скачать

Простой итеративный код

Простая система кодирования, которая, как оказывается, имеет различные применения, может быть построена следующим образом. Предположим, что нужно передать девять информационных символов. Эти девять символов можно расположить в виде квадратной матрицы, как показано в табл. 1, с проверочными символами, добавленными к каждой строке и к каждому столбцу. Один оставшийся символ P7 является общим проверочным символом на четность.

Таблица 1. Простой

итеративный блоковый код

с проверкой на четность

по строкам и по столбцам

Легко показать, что кодовое расстояние этого кода равно 4. Прежде всего, одиночная ошибка приведет к тому, что проверки на четность, соответствующие строке и столбцу, содержащим ошибку, не будут выполняться. Таким образом, координаты одиночной ошибки однозначно определяются по номерам строки и столбца, в которых не выполняется проверка на четность. Поскольку эти номера различны для различных одиночных ошибок, кодовое расстояние будет не меньше 3. Поскольку наличие проверки P7 га­рантирует, что все кодовые слова имеют четный вес, кодовое расстояние будет не меньше 4. Вместе с тем кодовое расстояние в точности равно 4, поскольку код с кодовым расстоянием 5 позволяет однозначно распознавать все двукратные ошибки. В рассматриваемом коде этого сделать нельзя, поскольку ошибки в символах A5 и A9 приводят в точности к тем же невыполненным проверкам (синдрому), что и ошибки в символах A6 и A 8. Проверочная матрица этого кода имеет вид

.

Следует заметить, что матрица Н может быть записана в нескольких эквивалентных формах. Одна из этих форм, имеющая определенные преимущества при реализации в некоторых ситуациях, может быть получена добавлением четвертой, пятой и шестой строк к последней строке, в результате чего последняя строка становится равной

и Р7 вычисляется теперь как сумма Р1, Р2 и Р3. Аналогично Р7 можно вычислять как сумму Р4, Р5 и Р6. Удобство, достигаемое при вычислении Р7 как суммы Р1, Р2 и Р3, состоит в том, что при таком способе все столбцы вычисляются абсолютно одинаково. Этот принцип справедлив при любых размерах массива. Таким образом, описанный метод оказывается полезным в случае, когда данные естественно формируются в виде массива, как, например, знаки в шине для передачи данных или на бумажной ленте, когда длина серии знаков не фиксирована. Во многих практических случаях, связанных с пересылкой данных, обычно вводится проверка на четность для каждого знака. Нетрудно при этом вычислить знак общей проверки, записав серию знаков в регистре, использующем сложение по модулю 2.

Полиномиальные коды

В предыдущих разделах кодовое слово (п,k) -кода представлялось в виде набора длиной п:

.

Другой способ представления того же кодового слова состоит в том, чтобы считать элементы коэффициентами многочлена от х. Таким образом,

Используя это обозначение, можно определить полиномиальный код как множество всех многочленов степени, не большей п – 1, содержащих в качестве множителя некоторый фиксированный многочлен g(x). Многочлен g(x) называется порождающим многочленом кода. Для того чтобы иметь возможность умножать такие ко­довые многочлены, разлагать их на множители и производить над ними другие операции, нужно уметь складывать, вычитать, умножать и делить их коэффициенты. Этого легко добиться, если потребовать, чтобы все коэффициенты были элементами некоторого конечного поля.

Соседние файлы в предмете [НЕСОРТИРОВАННОЕ]