- •Лабораторная работа № 101 построение и реализация эффективных кодов
- •1.1. Указания к построению кодов
- •1.2. Программные и технические средства реализации
- •1.3. Описание программного обеспечения и технической реализации эффективных кодов
- •Технической реализации эффективных кодов
- •Технической реализации эффективных кодов
- •Задание
- •Требования к отчету
- •Контрольные вопросы
- •2.2. Составление таблицы опознавателей
- •2.3. Определение проверочных равенств
- •2.4. Мажоритарное декодирование групповых кодов
- •2.5. Описание программного обеспечения
- •Задание
- •Требования к отчету
- •Контрольные вопросы
- •Литература
- •Лабораторная работа №103 построение и реализация циклических кодов
- •Указания к построению кодов.
- •3.1. Выбор образующего многочлена
- •3.2. Метод и средства кодирования
- •3.3. Метод и средства декодирования
- •3.2 Описание лабораторной работы
- •3.3 Описание программного обеспечения
- •3.3 Задание
- •Выполняется в лаборатории
- •Лабораторная работа № 104 построение и реализация рекуррентных кодов
- •4.2. Описание лабораторной работы.
- •Задание
- •Выполняется в лаборатории
- •Требования к отчету
- •Контрольные вопросы
- •Литература
- •Содержание
Технической реализации эффективных кодов
С помощью главного меню можно получить информацию о способах эффективного кодирования и как работать с данной программой.
Во второй части лабораторной работы применяется кодирование по Хаффмену. Порядок действий аналогичен выполнению первой части лабораторной работы.
Заключительной частью лабораторной работы является построение дерева Хаффмена для кодирования небольшого текста. Эта часть является чисто демонстрационной. В ней шаг за шагом рассматривается процесс кодирования и построения дерева Хаффмена.
В окно с надписью "Текст для кодирования" вводится подготовленный текст. Во всех случаях для продолжения работы нажимается F10, для возврата назад – F9, подсказка – F1. Рядом в окне показывается частота появления букв в тексте. Для удобства можно передвигаться по тексту и выбрав любую букву клавишей <ENTER>, наглядно посмотреть эту букву в тексте. Она будет выделена другим цветом.
На следующем этапе строится дерево Хаффмена. Дерево расшифровывается следующим образом. Красный прямоугольник – узел дерева, соответствующий букве. В нижней половине прямоугольника выводится сама буква, а в верхней – количество вхождений этой буквы в текст. Серые узлы дерева – узлы, которые получились в процессе свертки. Число внутри такого узла показывает общую сумму вхождений. Каждому ребру дерева присваивается “0” или “1”. Чтобы определить код конкретной буквы, входящей в текст, необходимо пройти путь от начала дерева до этой буквы в его конце, накапливая символы (“0” или “1”) при перемещении по ребрам дерева.
Задание
Выполняется при домашней подготовке
1. Изучить описание и рекомендованную литературу, изучить методы построения и технической реализации эффективных кодов.
2. По конкретным значениям вероятностей встречаемости букв, заданных студенту преподавателем или выбранно самостоятельно (отличающихся от рассмотренного в описании, не более 8 букв и нетривиальный случай), построить эффективный код, используя методики Шеннона-Фено и Хаффмена.
3. Вычислить энтропию источника и среднюю длину комбинации полученного кода.
4. Подготовить небольшой текст на 150–200 букв для построения дерева кодирования демонстрационной программой.
Выполняется в лаборатории
1. Используя построенный код по методу Шеннона-Фено и Хаффмена правильно расставить диоды в схемах кодирующего и декодирующего устройства.
2. Проверить работоспособность системы передачи.
3. Ввести текст для построения дерева кодирования.
Зарисовать таблицу и дерево Хаффмена.
Подсчитать выигрыш от записи текста эффективным кодом.
Требования к отчету
Отчет должен включать:
таблицу построения эффективного кода по методике Шеннона-Фено;
схемы шифратора и дешифратора для построенного кода;
таблицу и кодовое дерево, иллюстрирующие построение эффективного кода по методике Хаффмена.
Результаты расчетов энтропии источника и среднюю длину кода для буквы, отдельно для заданного Вами алфавита из 8 букв и текста.