Файл: Построение кода Хэмминга для обнаружения и исправления одиночных ошибок.docx

ВУЗ: Не указан

Категория: Отчет по практике

Дисциплина: Не указана

Добавлен: 22.11.2023

Просмотров: 30

Скачиваний: 3

ВНИМАНИЕ! Если данный файл нарушает Ваши авторские права, то обязательно сообщите нам.

Минобрнауки России

Юго-Западный государственный университет

Кафедра космического приборостроения и систем связи

Отчёт по выполнению лабораторной работы №7

по курсу «Основы теории информации и кодирования»

на тему «Построение кода Хэмминга для обнаружения и

исправления одиночных ошибок»

Выполнил: студент группы ИТ-11б Шульгин Е.А.

«»2023 г.

(подпись)

Проверил: ст. препод. Чуев А.А.

«»2023 г.

(подпись)

Курск 2023 г.

1 Цель работы

приобрести умение строить код Хэмминга для обнаружения и исправления одиночных ошибок в кодовых словах.

2 Индивидуальные задания

Данные для выполнения работы (таблица 1).
Таблица 1 – Данные для получения кодовых слов Хэмминга

Вариант

Передаваемые кодовые слова

17

0001011 1101110 0001000


1. Пусть требуется получить кодовое слово Хэмминга для двоичного кодового слова x =0001011.

Рассматриваемое кодовое слово содержит семь информационных символов, то есть m = 7. Число проверочных символов определяется из условия 2k> m + k + 1. При этом минимальное число проверочных символов k, при котором выполняется данное условие, будет k = 4, так как 24= 16 > 7 + 4+1 = 12.

Следовательно, кодовое слово Хэмминга для слова х = 0001011 будет содержать 11 символов, то есть n = 11. При этом проверочными символами будут 1, 2, 4, 8 , а информационными символами соответственно будут 3, 5, 6, 7, 9, 10, 11.

Прономеруем и запишем значения информационных символов (таблица 2).
Таблица 2 – Значения информационных символов


X1

X2

X3

X4

X5

X6

X7

X8

X9

X10

X11

k1

k2

m1

k3

m2

m3

m4

k4

m5

m6

m7







0




0

0

1




0

1

1


Определим значения проверочных символов. Значение символа k1 = X1 определяется из условия:

S1 = x1  x3  x5  x7  x9  x11 = 0;

S1 = x1  0  0  1  0  1 = x1 0 = 0.

Отсюда k1 = x1  0.

Значения символа k2 = x2 определяется из условия:

S2 = x2  x3  x6  x7  x10  x11 = 0;

S2 = x2  0  0  1  1  1= x2 1 = 0.

Отсюда k2 = x2  1.

Значение символа k4 = х4 определяется из условия:

S4 = x4  x5  x6  x7 = 0;

S4 = x4  0  0  1 = x4 1 = 0.

Отсюда k4 = x4  1.

Значение символа k8 = х8 определяется из условия:

S8 = x8  x9  x10  x11 = 0;

S8 = x8  0  1  1 = x8 0 = 0.

Отсюда k8 = x8  0.

В итоге кодовое слово Хэмминга для кодового слова x = 0 0 0 0 1 1 1 будет иметь вид XH = 0 1 0 1 0 0 1 0 0 1 1.

2. Пусть требуется получить кодовое слово Хэмминга для двоичного кодового слова x = 1101110.

Следовательно, кодовое слово Хэмминга для слова х = 1101110 будет содержать 11 символов, то есть n = 11.

Прономеруем и запишем значения информационных символов (таблица 3).
Таблица 3 – Значения информационных символов

X1

X2

X3

X4

X5

X6

X7

X8

X9

X10

X11

k1

k2

m1

k3

m2

m3

m4

k4

m5

m6

m7







1




1

0

1




1

1

0



Определим значения проверочных символов. Значение символа k1 = X1 определяется из условия:

S1 = x1  x3  x5  x7  x9  x11 = 0;

S1 = x1  1  1  1  1  0 = x1 0 = 0.

Отсюда k1 = x1  0.

Значения символа k2 = x2 определяется из условия:

S2 = x2  x3  x6  x7  x10  x11 = 0;

S2 = x2  1  0  1  1  0= x2 1 = 0.

Отсюда k2 = x2  1.

Значение символа k4 = х4 определяется из условия:

S4 = x4  x5  x6  x7 = 0;

S4 = x4  1  0  1 = x4 0 = 0.

Отсюда k4 = x4  0.

Значение символа k8 = х8 определяется из условия:

S8 = x8  x9  x10  x11 = 0;

S8 = x8  1  1  0 = x8 0 = 0.

Отсюда k8 = x8  0.

В итоге кодовое слово Хэмминга для кодового слова x = 1 1 0 1 1 1 0 будет иметь вид XH = 0 1 1 0 1 0 1 0 1 1 0.

3. Пусть требуется получить кодовое слово Хэмминга для двоичного кодового слова x = 0001000. Следовательно, кодовое слово Хэмминга для слова х = 0001000 будет содержать 11 символов, то есть n = 11.

Прономеруем и запишем значения информационных символов (таблица 4).
Таблица 4 – Значения информационных символов

X1

X2

X3

X4

X5

X6

X7

X8

X9

X10

X11

k1

k2

m1

k3

m2

m3

m4

k4

m5

m6

m7







0




0

0

1




0

0

0


Определим значения проверочных символов. Значение символа k1 = X1 определяется из условия:

S1 = x1  x3  x5  x7  x9  x11 = 0;

S1 = x1  0  0  1  0  0 = x1 1 = 0.

Отсюда k
1 = x1  1.

Значения символа k2 = x2 определяется из условия:

S2 = x2  x3  x6  x7  x10  x11 = 0;

S2 = x2  0  0  1  0  0= x2 1 = 0.

Отсюда k2 = x2  1.

Значение символа k4 = х4 определяется из условия:

S4 = x4  x5  x6  x7 = 0;

S4 = x4  0  0  1 = x4 1 = 0.

Отсюда k4 = x4  1.

Значение символа k8 = х8 определяется из условия:

S8 = x8  x9  x10  x11 = 0;

S8 = x8  0  0  0 = x8 0 = 0.

Отсюда k8 = x8  0.

В итоге кодовое слово Хэмминга для кодового слова x = 0 0 0 1 0 0 0 будет иметь вид XH = 1 1 0 1 0 0 1 0 0 0 0.

3 Вывод

В ходе выполнения лабораторной работы были приобретены навыки построения кода Хэмминга для обнаружения и исправления одиночных ошибок в кодовых словах.