Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
Arkhivatsia.doc
Скачиваний:
0
Добавлен:
01.07.2025
Размер:
190.98 Кб
Скачать

10) Смысловая архивация.

Как видно из приведенных примеров. коэффициент сжатия объема занимаемого текста в результате архивации во многом определяется самим текстом, такими его характеристиками, как:

- число различных символов;

- частота повторения символов:

- расстояние между одинаковыми символами.

Во всех вышеприведенных алгоритмах мы исходили из необходимости однозначного восстановления архивируемого текста, т.е. по сути искали альтернативные способы кодировки, позволяющие наиболее экономно использовать память ЭВМ. Однако, не надо забывать, что исходный текст может содержать и смысловую избыточность, т. е., при определенных условиях он может правильно восстановлен даже в случае безвозвратной потери какой-то своей части. Например, если в архивируемом тексте пропадут все гласные буквы, то думается, что восстановление будет представлять собой несложную процедуру для человека, умеющего грамотно писать. Точно также сможет восстановить данный текст и ЭВМ при наличии в памяти орфографического словаря.

Например:

"3?Щ?Т? ПР?ГР?ММ ? Д?НН?Х ?Т НСД"

В этом случае, применяя префиксный код можно сжать текст до 14 байт.

Символ

Частота повторения

Код

Объем (бит)

пробел

5

0

10

?

9

01

18

н

3

101

9

м

2

110

6

л

2

1001

8

т

2

1110

8

р

2

1000

8

п

1

11110

5

г

1

111110

6

щ

1

1111110

7

з

1

11111110

8

х

1

111111110

9

с

1

111111111

9

111 бит

В приведенном прим ере из текста были изъяты только гласные буквы. Однако, буквы - кандидаты на удаление могут быть выбраны и случайным образом. Исходя из того, что избыточность любого естественного языка составляет 30-40% предварительно, перед архивацией, можно используя случайные последовательности проредить текст, удалив из него 30-40, символов. Благодаря чему, объем исходного текста, подлежащего архивации, значительно сократится. Однако, надо помнить, что применение смысловой архивации иногда может быть чревато существенной потерей смысла текста. Например, попробуйте расшифровать следующую фразу (все гласные заменены символом "?"):

Кл?д б?л ? ?ин?.

Возможные варианты:

  1. Клад был у Инны.

  2. Клод бил и Анну.

  3. Клод был у Анны.

В серьезных приложениях смысловая архивация никогда не используется, и здесь данный алгоритм приведен исключительно для полноты картины.

Соседние файлы в предмете [НЕСОРТИРОВАННОЕ]