Отчет к курсовой работе по дисциплине «Теория информации и основы
криптографии», кафедра МОСОИиУ факультета прикладной математики,
МГИЭМ, 4 курс, 8 семестр обучения. Преподаватель Зуйкова О. Л.
Задание (Вариант 31)
Пусть источник информации (ИИ) генерирует тексты на английском языке. Считать, что буквы появляются независимо друг от друга с вероятностями, заданными в таблице Приложение
Выбрать для работы файл, содержащий английский текст объемом 3-5 страниц. Большие и малые буквы считать одинаковыми символами; символы, не встречающиеся в таблице, заменить пробелами.
Рассчитать (написать программу) методом Шеннона-Фано оптимальные двоичные коды сообщений данного источника информации. Таблицу кодов хранить в отдельном файле.
Для полученного кода рассчитать:
энтропию и избыточность ИИ,
среднее число символов кода на один символ алфавита ИИ,
избыточность кода,
ожидаемый коэффициент сжатия данных как отношение энтропии ИИ к энтропии кода в пересчете на один двоичный символ в памяти компьютера.
Написать программы, выполняющие кодирование и декодирование с помощью полученной таблицы кодов. Исходное сообщение берется из файла, результат также должен быть сохранен в файле. Для того, чтобы программа выполняла реальное сжатие, необходимо, чтобы каждый символ кода (0 или 1) занимали 1 бит памяти.
Выполнить кодирование (сжатие) данных для двух различных файлов: того, по которому считались вероятности и другого файла, содержащего подобный текст. В каждом случае сравнить объемы полученных файлов и определить практическую степень сжатия как отношение размеров полученного файла к исходному, сравнить ее с теоретической.
Задание (Вариант 31)
Пусть источник информации (ИИ) генерирует тексты на английском языке. Считать, что буквы появляются независимо друг от друга с вероятностями, заданными в таблице Приложение
Выбрать для работы файл, содержащий английский текст объемом 3-5 страниц. Большие и малые буквы считать одинаковыми символами; символы, не встречающиеся в таблице, заменить пробелами.
Рассчитать (написать программу) методом Шеннона-Фано оптимальные двоичные коды сообщений данного источника информации. Таблицу кодов хранить в отдельном файле.
Для полученного кода рассчитать:
энтропию и избыточность ИИ,
среднее число символов кода на один символ алфавита ИИ,
избыточность кода,
ожидаемый коэффициент сжатия данных как отношение энтропии ИИ к энтропии кода в пересчете на один двоичный символ в памяти компьютера.
Написать программы, выполняющие кодирование и декодирование с помощью полученной таблицы кодов. Исходное сообщение берется из файла, результат также должен быть сохранен в файле. Для того, чтобы программа выполняла реальное сжатие, необходимо, чтобы каждый символ кода (0 или 1) занимали 1 бит памяти.
Выполнить кодирование (сжатие) данных для двух различных файлов: того, по которому считались вероятности и другого файла, содержащего подобный текст. В каждом случае сравнить объемы полученных файлов и определить практическую степень сжатия как отношение размеров полученного файла к исходному, сравнить ее с теоретической.