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

Министерство науки и высшего образования Российской Федерации Федеральное государственное автономное образовательное учреждение высшего образования

ТОМСКИЙ ГОСУДАРСТВЕННЫЙ УНИВЕРСИТЕТ СИСТЕМ УПРАВЛЕНИЯ И РАДИОЭЛЕКТРОНИКИ (ТУСУР)

Кафедра комплексной информационной безопасности электронно-вычислительных систем (КИБЭВС)

ПОМЕХОУСТОЙЧИВОЕ КОДИРОВАНИЕ. КОД ХЕММИНГА

Отчет по практической работе №1

по дисциплине «Теория электрической связи»

____________

Руководитель

Преподаватель каф. КИБЭВС

В.С. Аврамчук

____________

Оглавление

Y

Введение 3

1 Теоретическая справка 4

1.1 Принцип кодов Хемминга 4

1.2 Маркировка кодов Хемминга 4

1.3 Алгоритмы кодирования и декодирования 5

2 Ход работы 7

2.1 Выбор среды для реализации программной модели 7

2.2 Описание используемых функций и методов 7

Заключение 12

Ответы на контрольные вопросы 13

Приложение А 17

Введение

Цель работы: изучение назначения и принципов помехоустойчивого кодирования, ознакомление с некоторыми группами помехоустойчивых кодов, а также моделирование простейшей ситуации передачи данных по ненадежному каналу связи с использованием кода Хемминга.

Задание:

1. Разработать программу со следующими функциями:

1.1. Преобразование произвольной (вводимой пользователем) текстовой строки в последовательность 8-битовых блоков.

1.2. Шифрование исходной последовательности кодом Хемминга.

1.3. Внесение единичной ошибки в один из битов каждого блока «при передаче» (с вероятностью 50%) или «передача» блока без внесения ошибок (с вероятностью 50%)

1.4. Проверка на «принимающей» стороне наличия ошибок в информационных разрядах и их исправление.

1.5. Дешифрование «принятой» последовательности

1.6. Преобразование битовой последовательности в текстовую строку.

1.7. Вывод на экран данных, относящихся к произвольному (выбирается пользователем) элементу строки, на каждом этапе преобразования, в т.ч. двоичного представления символа, избыточного кода, кода после «передачи», кода после исправления ошибок.

2. Реализовать ручную проверку работоспособности программы (на примере передачи двух первых букв фамилии исполнителя)

1 Теоретическая справка

1.1 Принцип кодов Хемминга

В основе кодов Хемминга лежит принцип проверки четности количества единичных битов в информационных разрядах кодового блока. Идею проверки четности можно проиллюстрировать на примере простейшего кода с проверкой четности. Процесс кодирования сводится к добавлению единственного контрольного бита к безызбыточному коду. Контрольный бит является 1, если количество 1 в исходной кодовой комбинации нечетное, иначе в контрольный разряд вписывается 0. Таким образом, правило формирования проверочного символа сводится к следующему:

(1.1)

где

𝑘 – количество информационных разрядов в блоке;

, 𝑗 = – информационные биты;

– контрольный бит.

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

1.2 Маркировка кодов Хемминга

В настоящее время разработаны и используются различные коды Хемминга, отличающиеся числом информационных и проверочных символов. Обозначение кодов осуществляется па рой чисел (𝑛,𝑘), где 𝑛 – общее количество разрядов в блоке, 𝑘 – число ин формационных разрядов. Классическими кодами Хемминга называются коды, для которых выполняются соотношения 𝑛 = − 1 и 𝑘 = − 1 − 𝑟, где 𝑟 - количество контрольных разрядов. Примерами классических кодов являются коды (7,4), (15,11), (31,26) [3]. При других значениях числа информационных разрядов получаются, так называемые усеченные коды Хемминга. В частности, используется корректирующий код (9,5), являющийся усеченным от классического (15,11).

Соседние файлы в предмете Теория электрической связи