|
|||||||
АвтоАвтоматизацияАрхитектураАстрономияАудитБиологияБухгалтерияВоенное делоГенетикаГеографияГеологияГосударствоДомДругоеЖурналистика и СМИИзобретательствоИностранные языкиИнформатикаИскусствоИсторияКомпьютерыКулинарияКультураЛексикологияЛитератураЛогикаМаркетингМатематикаМашиностроениеМедицинаМенеджментМеталлы и СваркаМеханикаМузыкаНаселениеОбразованиеОхрана безопасности жизниОхрана ТрудаПедагогикаПолитикаПравоПриборостроениеПрограммированиеПроизводствоПромышленностьПсихологияРадиоРегилияСвязьСоциологияСпортСтандартизацияСтроительствоТехнологииТорговляТуризмФизикаФизиологияФилософияФинансыХимияХозяйствоЦеннообразованиеЧерчениеЭкологияЭконометрикаЭкономикаЭлектроникаЮриспунденкция |
Описание лабораторной работы9.6.1.Первая часть программы предназначена для самостоятельного построения кода Хаффмена для различных сообщений с разными вероятностями. Она включает построение кодовой таблицы, а затем и кодового дерева кода Хаффмена. Студент выполняет эти два этапа построения кода и, если при данном распределении вероятностей сообщений существует возможность построить кодовое дерево по-разному, он может увидеть эти варианты. Затем имеется возможность повторить всю работу заново при других вариантах распределения вероятностей сообщений. В обеих частях программы работа выполняется в основном манипулятором типа «мышь». В первой части широко используется перетаскивание некоторых объектов из одного места в другое. Программа постоянно ведет контроль за выполненной работой и дает разрешение на переход к следующему этапу или к другим действиям. Вторая часть программы предназначена для эмуляции системы связи, использующей код Хаффмена и один из равномерных кодов – МТК-2. Программным путем эмулируются такие устройства как: 1) блок ввода сообщения: 2) блок равномерного кодирования: 3) кодер Хаффмена: 4) блок определения длины кодовой комбинации; 5) блок ввода ошибки; 6) декодер Хаффмена; 7) блок определения ошибочных сообщений, 8) блок отображения. Функциональная схема моделируемой системы связи представлена на рисунке 4.
Рисунок 4 – Функциональная схема моделируемой системы связи
При помощи данной программы возможно наблюдение закодированной исходной последовательности сообщений кодером Хаффмена и блоком равномерного кодирования, внесение ошибки в закодированную последовательность сообщений, наблюдение явления размножения ошибок. В блоке ввода сообщений обеспечивается ввод исходной последовательности сообщений. Вводимая последовательность может состоять из сообщений одного из семи вариантов алфавита (вариант указывается в начале работы) или из букв русского алфавита (набираемых на клавиатуре). В блоке равномерного кодирования можно наблюдать исходную последовательность сообщений, закодированную равномерным кодом. В блоке кодера Хаффмена можно наблюдать исходную последовательность сообщений, закодированную с использованием неравномерного префиксного кода Хаффмена. В блоке определения длины кодовой комбинации производится отображение длины закодированного сообщения и средней длины кодовой комбинации для случаев равномерного кодирования и кодирования кодом Хаффмена. Блок ввода ошибки позволяет вносить одиночную или групповую ошибку Блок декодера Хаффмена производит декодирование закодированного сообщения, при этом отображается восстановленное сообщение на выходе декодера. В блоке определения ошибочных сообщений происходит сравнение последовательности двоичных элементов, переданных в линию связи, с принятой последовательностью. Ошибочные элементы отображаются красным цветом. В блоке отображения происходит отображение принятого сообщения, а также выводятся характеристики качества передачи: количество ошибочно принятых двоичных элементов и сообщений. 9.6.2. Разработанная программа состоит фактически из двух частей: 1) программа для построения кода Хаффмена в соответствии с заданными вероятностями сообщений; 2) программа, эмулирующая работу системы связи, использующей равномерный код и неравномерный код Хаффмена; Кроме того, имеется тестирующая система; В каждой из разработанных программ имеется главное окно, с которым непосредственно работает пользователь. В нем расположены элементы управления программой. В состав главного окна входят процедуры, обрабатывающие действия пользователя при работе с программой и процедуры, позволяющие пользователю вывести другие окна приложения. В главном окне первой программы расположены следующие элементы управления: 1) главное меню, при использовании которого можно активизировать любое прикладное окно программы; 2) кнопки управления, одни из которых дублируют команды главного меню, другие служат для выполнения определенного действия, связанного с этой кнопкой (переход к другому действию, получение справки); Все окна первой программы по составу можно разделить на три части: 1) окно запроса сообщений и их вероятностей или выбора их заранее заданных вариантов; 2) окно, в котором студент создает кодовую таблицу кода Хаффмена; 3) окно, в котором создается двоичное кодовое дерево кода Хаффмена. В процессе создания таблицы и кодового дерева кода Хаффмена студент главным образом пользуется мышью, перетаскивая некоторые объекты из одного поля окна в другое. Программа следит за действиями пользователя и при необходимости дает указания по правильности выполнения тех или иных операций. В начале каждого этапа работы программа проводит обучение и рассказывает о назначении тех или иных элементов окна в данный момент. В главном окне второй программы расположены следующие элементы управления: 1) кнопки управления, которые служат для выполнения определенных действий в ходе работы, а также активизации окна инструкции пользователя и окна сведений о программе; 2) несколько функциональных блоков в соответствии со схемой, приведенной на рисунке 6, с которыми и работает пользователь; 3) окна с описанием порядка выполнения работы. В ходе работы студент вводит необходимые данные (последовательность Тестовая система содержит сорок вопросов, а также выдает результат тестирования в виде оценки. Кроме того, имеется краткая теория, активизировать которую пользователь может, нажав соответствующую кнопку в окне программы. Краткая теория содержит описание метода Хаффмена, а также пример построения кодовых комбинаций, параметры, оценивающие эффективность неравномерных кодов. Материал снабжен необходимыми рисунками и таблицами.
Поиск по сайту: |
Все материалы представленные на сайте исключительно с целью ознакомления читателями и не преследуют коммерческих целей или нарушение авторских прав. Студалл.Орг (0.004 сек.) |