Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
Answers v.1.0.docx
Скачиваний:
0
Добавлен:
01.03.2025
Размер:
501.37 Кб
Скачать

67. Условие однозначной декодируемости для неравномерных кодов.

Пусть V={al, а2, ... , aN} префиксный двоичный код. Длины кодовых слов a1, а2, …, aN, равны l1, l2, ... , lN , при этом длина слова равна номеру этажа на котором находится концевая вершина

Раннее установлено, что .

Здесь ni число концевых вершин i-го этажа дерева

Учитывая взаимосвязь длины слова и номера этажа получаем нер-во Крафта: .

Неравенство Крафта явл. условием однозначной декодируемости префиксных кодов.

68. Кодирование и декодирование при передаче информации по каналам связи с «шумом». Типы кодов: с обнаружением и исправлением ошибки. Расстояние Хемминга и аксиомы расстояний. Вес слова. Теоремы об исправлении и обнаружении ошибок.

1) КОДИРОВАНИЕ И ДЕКОДИРОВАНИЕ?

2) Типы кодов

  • Коды с обнаружением ошибок, кот. с большой вер-тью опред. наличие ошибки в принятом сообщ.;

  • Коды с исправлением ошибок, кот. с большой вер-тью могут восст. посланное сообщ.

Расстояние Хемминга расстояние d(a, b) между словами a и b на множ. двоичных слов длины m и определяется числом несовпад. позиций этих слов.

Расстояние Хемминга удовл. аксиомам расстояний:

1) d(a, b) ³ 0 и d(a, b) = 0  когда a  = b;

2) d(a, b) = d(b, a);

3) d(a, b) + d(b, c) ³ d(a, c) (нер-во треугольника).

Вес w(a) слова a — число единиц среди его координат.

Расстояние между словами a и b есть вес суммы a Å b: d(a, b) = w(a Å b), где Å — операция покоординатного сложения по модулю 2.

Теорема. Для того, чтобы код позволял обнаруживать ошибки в k (или менее) позициях, необходимо и достаточно, чтобы наименьшее расстояние между кодовыми словами было ³  k + 1.

Теорема. Для того, чтобы код позволял исправлять все ошибки в k (или менее) позициях, необходимо и достаточно, чтобы наименьшее расстояние между кодовыми словами было ³  2k + 1.

69. Кодирование и декодирование по Хеммингу.

КОДИРОВАНИЕ:

__Для определения значения эл-тов вектора В, являющимися степенями двойки b0, b1, b4, b8 … используется матрица M размера k´m, в которой каждый столбец заполняется номером столбца в двоичном виде, где k-число потребовавшихся дополнительных позиций, а m-общее число позиций в векторе B.

_Записываем систему уравнений B´MT = 0

_Операция сложения подразумевает сложение по модулю.

ДЕКОДИРОВАНИЕ:

__Вставляем значения bi, определенных из системы уравнений

В = b1 b2 b3 b4 b5 b6 b7 b8 b9 b10 b11

0 0 0 0 1 1 0 0 1 1 0

_Вектор ошибок E(e1…em) состоит из всех нулей, если при передаче не было допущено ошибки. Если ошибка была допущена в позиции bi, то ei=1

__Принятое слово D(d1… dm) = В(b1… bm) + E(e1…em) состоит из суммы (сложения по модулю 2) закодированного слова и вектора ошибок.

__В принятом слове D(d1… dm) нет ошибки если D´MT = 0

Доказательство: D´MT = (B+E) ´MT = B´MT +E´MT = 0+0=0 (B´MT =0 по построению, E´MT =0 так как предполается отсутствие ошибки)

__В принятом слове D(d1… dm) ошибка содержится в столбце i, номером которого это двоичная запись вектора X, являющегося решением системы уравнений Х=D´MT

Доказательство: Х=D´MT =(B+E)´MT =B´MT +E´MT =0+E´MT =E´MT. Вектор E может содержать только одну «1». Пусть «1» находится в позиции bi, тогда запись E´MT соответствует системе уравнений, где на «1» от вектора E умножается только bi эл-т каждого столбца. В результате вектор Х(х1… хk) будет содержать значение bi строки матрицы MT. В свою очередь bi строка матрицы MT соответствует bi столбцу матрицы М. А матрица М заполнялась таким образом, что содержимое bi столбца соответствовало двоичной записи номера данного столбца.

15

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