Сжатие данных
тренажеры для изучения алгоритмов сжатия
Что это такое?
Тренажёры «RLE» и «Huffman» предназначены для изучения
темы «Сжатие данных» в школьном курсе информатики на профильном уровне.
Тренажёры можно использовать:
- для упаковки и распаковки текстовых строк;
- для упаковки и распаковки файлов любого формата;
- для анализа предельных возможностей сжатия файлов;
- для сравнения эффективности алгоритмов сжатия.
Программы работают под управлением операционных систем
линейки Windows на любых современных компьютерах.
Новости
15 января 2019 г.
Исправлена ошибка в реализации метода Шеннона-Фано в тренажере Huffman.
20 сентября 2018 г.
Исправлена ошибка в тренажере RLE.
2 октября 2012 г.
В тренажер Huffman добавлен алгоритм LZW.
28 сентября 2012 г.
Вышли версии 1.0 тренажёров RLE и Huffman.
Алгоритм RLE
Алгоритм RLE —
это простейший алгоритм сжатия данных, основанный на поиске цепочек
одинаковых символов. При кодировании строка одинаковых символов, составляющих серию, заменяется строкой,
которая содержит сам повторяющийся символ и количество его повторов.
В тренажёре «RLE» можно упаковывать и распаковывать с помощью алгоритма RLE строки текста,
а также файлы любого формата.
После щелчка по кнопке (клавиша F4)
текст, введенный в текстовом редакторе, сжимается.
Сжатые данные показываются в окне редактора в правой части окна программы в виде
шестнадцатеричных кодов байтов и изображений соответствующих символов.
Кнопка (клавиша F5) позволяет выполнить
обратный переход — распаковать сжатые данные, введённые
в редакторе шестнадцатеричных кодов в правой части.
Кнопки в верхней части окна предназначены для сжатия и распаковки файлов.
Обратите внимание, что распаковываются только те файлы,
которые сделаны в этой программе.
Если вы заметили ошибку или у вас есть
предложения, замечания, жалобы, просьбы и заявления, пишите.
Алгоритмы Хаффмана, Шеннона-Фано и LZW
В тренажёре «Huffman» реализованы два алгоритма побайтового сжатия данных:
алгоритм Шеннона-Фано
и Алгоритм Хаффмана.
Оба этих алгоритма используют коды переменной длины: часто встречающийся символ кодируется двоичным кодом
меньшей длины, редко встречающийся — кодом большей длины. Коды Шеннона-Фано и Хаффмана — префиксные,
то есть никакое кодовое слово не является началом любого другого. Это свойство позволяет однозначно
декодировать любую последовательность кодовых слов. В отличие от алгоритма Шеннона-Фано, алгоритм Хаффмана
обеспечивает минимальную избыточность, то есть минимальную длину кодовой последовательности при
побайтном кодировании.
При кодировании с помощью алгоритма LZW
строится таблица, в которой цепочкам символов ставятся в соответствие кодовые последовательности.
Прелесть этого алгоритма состоит в том, что для декодирования не нужна никакая дополнительная
информация, кроме закодированного текста: таблица строится прямо в процессе декодировки.
В тренажёре «Huffman» можно упаковывать и распаковывать с помощью
алгоритмов Хаффмана, Шеннона-Фано и LZW строки текста, а также файлы любого формата.
После щелчка по кнопке (клавиша F4)
текст, введенный в текстовом редакторе, сжимается.
Сжатые данные показываются в нижней части окна программы в виде
строки, содержащей двоичный код. В правой части показывается таблица кодов символов,
использованная при сжатии.
Кнопки в верхней части окна предназначены для сжатия и распаковки файлов.
Обратите внимание, что распаковываются только те файлы,
которые сделаны в этой программе.
Кнопка Анализ файла позволяет определить для любого файла
предельный теоретически достижимый коэффициент сжатия при побайтном кодировании.
Если вы заметили ошибку или у вас есть
предложения, замечания, жалобы, просьбы и заявления, пишите.
Лицензия
Программы являются бесплатными для некоммерческого использования.
Исходные тексты программ не распространяются.
Программы поставляются «as is», то есть, автор не несет никакой
ответственности за всевозможные последствия их использования,
включая моральные и материальные потери, вывод оборудования из
строя, физические и душевные травмы.
При размещении программ на других веб-сайтах ссылка на первоисточник обязательна.
Без письменного согласия автора
ЗАПРЕЩАЕТСЯ:
- 1) публикация материалов в любой форме, в том числе размещение материалов на других Web-сайтах;
- 2) распространение неполных или измененных материалов;
- 3) включение материалов в сборники на любых носителях информации;
- 4) получение коммерческой выгоды от продажи или другого использования материалов.
Использование и скачивание материалов означает, что вы приняли условия этого лицензионного соглашения.
Скачать
Пароль к архиву — kpolyakov.spb.ru
В архив включены следующие файлы:
rle.exe |
основная программа — тренажёр для изучения RLE-кодирования |
Пароль к архиву — kpolyakov.spb.ru
В архив включены следующие файлы:
huffman.exe |
основная программа — тренажёр для изучения алгоритмов Хаффмана, Шеннона-Фано и LZW |
После распаковки архивов программы находятся в работоспособном состоянии и
не требуют никаких дополнительных установок.