Главная страница
Навигация по странице:

  • Шеннон и Фано Хаффман

  • Анализ файла

  • Размер файла П редельный коэффициент сжатия

  • ПР№3открой_файл_и_поменяй_ответы. Сравнение алгоритмов сжатия


    Скачать 18.75 Kb.
    НазваниеСравнение алгоритмов сжатия
    Дата21.09.2022
    Размер18.75 Kb.
    Формат файлаdocx
    Имя файлаПР№3открой_файл_и_поменяй_ответы.docx
    ТипДокументы
    #688891

        1. Сравнение алгоритмов сжатия


    При выполнении этой работы используются программы RLE (алгоритм сжатия RLE) и Huffman (кодирование Хаффмана и Шеннона-Фано).

    1. Запустите программу Huffman.exe и закодируйте строку «ЕНОТ НЕ ТОНЕТ», используя методы Шеннона-Фано и Хаффмана. Запишите результаты в таблицу:




    Шеннон и Фано

    Хаффман

    Длина основного кода

    30

    30

    Длина кодовой таблицы (дерева)

    49

    49

    Коэффициент сжатия (по основным кодам)

    3,47

    3,47

    Коэффициент сжатия (с учетом дерева кодов)

    1,32

    1,32

    Сделайте выводы.

    Ответ:

    Файлы сжимаются одинаково двумя методами.

    Как, по вашему мнению, будет изменяться коэффициент сжатия при увеличении длины текста, при условии, что набор символов и частота их встречаемости останутся неизменной? Проверьте ваш вывод с помощью программы (например, можно несколько раз скопировать ту же фразу).

    Ответ:

    Не измениться.

    1. Используя кнопку Анализ файла в программе Huffman, определите предельный теоретический коэффициент сжатия для файла a.txt1 при побайтном кодировании.

    Ответ:

    Нету.

    1. С помощью программ RLE и Huffman выполните сжатие файла a.txt разными способами. Запишите результаты в таблицу:




    RLE

    Шеннон и Фано

    Хаффман

    Размер сжатого файла

    16526 байт

    131094 байта

    131094 байта

    Коэффициент сжатия

    63,45

    8

    8

    Объясните результат, полученный с помощью алгоритма RLE.

    Ответ:

    Алгоритм RLE лучше сжимает файлы из множества подобных символов.

    1. Используя кнопку Анализ файла в программе Huffman, определите предельный теоретический коэффициент сжатия для файла a.txt.huf при побайтном кодировании. Объясните результат.

    Ответ:

    3866

    1. Примените несколько раз повторное сжатие этого файла с помощью алгоритма Хаффмана (новые файлы получат имена a.txt.huf2, a.txt.huf3 и т.д.) и заполните таблицу, каждый раз выполняя анализ полученного файла.




    Размер файла

    Предельный коэффициент сжатия

    a.txt

    131094

    8

    a.txt.huf

    16436

    7,98

    a.txt.huf2

    2160

    7,61

    a.txt.huf3

    485

    4,45

    a.txt.huf4

    467

    1,04

    a.txt.huf5

    713

    0,65

    a.txt.huf6

    1012

    0,7

    Объясните, почему с некоторого момента при повторном сжатии файла его размер увеличивается.

    Ответ:

    в определенный момент в алфавите построенного дерева оказывается меньше 3 символов

    1. Выполните те же действия, используя метод Шеннона-Фано.




    Размер файла

    Предельный коэффициент сжатия

    a.txt

    131094

    8

    a.txt.shf

    16436

    7,98

    a.txt.shf2

    2160

    7,61

    a.txt.shf3

    477

    4,53

    a.txt.shf4

    453

    1,05

    a.txt.shf5

    705

    0,64

    a.txt.shf6

    1001

    0,7

    Объясните, почему с некоторого момента при повторном сжатии файла его размер увеличивается.

    Ответ:

    в определенный момент в алфавите построенного дерева оказывается меньше 3 символов

    1. Сравните результаты сжатия этого файла с помощью алгоритма RLE, лучшие результаты, полученные методами Шеннона-Фано и Хаффмана, а также результат сжатия этого файла каким-нибудь архиватором.




    Размер файла

    Предельный коэффициент сжатия

    RLE

    16526

    63,45

    Хаффман

    131094

    8

    Шеннон и Фано

    131094

    8

    ZIP







    RAR

    601

    1744

    7Z







    Объясните результаты и сделайте выводы.

    Ответ:

    Методы Хаффмана и Шеннона-Фано имеют одинаковый коэф сжатия, RLE сжимает лушче них, но RAR является лучшим вариантом.



    1 Этот файл имеет объем 1 Мбайт и состоит из одних символов «А».


    написать администратору сайта