ВУЗ:
Составители:
тодом стопки книг, был предложен Б.Я. Рябко.
Предположим, что нужно передать сообщение X из алфавита А, в ко-
тором буквы алфавита отождествлены с числами 1, 2, …, L, где L – число
элементов алфавита А. Каждой букве алфавита соответствует код k
i
, 1 = 1,
..., L. При появлении в сообщении X очередной буквы х
j
ее код представля-
ется кодом номера позиции j, занимаемой в данный момент буквой х
j
в
списке. Это дает возможность на приемном конце по коду номера позиции
j определить букву х
j
. После кодирования буквы х
j
одновременно на прием-
ном и передающих концах перемещают букву х
j
в начало списка, увеличи-
вая тем самым на единицу номера букв, стоявших на позициях от 1 до j – 1.
Номера букв, стоявших на позициях от j + 1 до L, остаются без изменений.
В результате кодирования открытого текста в начале списка будут нахо-
диться буквы, которые наиболее часто встречались в открытом тексте.
Интересный метод кодирования в 1992 г. предложил С.П. Савчук. В
отличие от метода стопки книг перемещению подвергается список кодов.
Пусть алфавит А = {а
1
, а
2
, ..., а
n
}. Данному порядку расположения букв со-
ответствует начальный список кодов K
0
= {k
1
, k
2
, ..., k
n
}. При появлении в
кодируемом сообщении буквы a
i
в качестве кода выбирается соответст-
вующий ее местоположению код k
i
. После этого осуществляется сдвиг спи-
ска кодов:
{k
1
, k
2
, ..., k
i
, ..., k
n
} → {k
2
, k
3
, ..., k
n
, k
1
}.
Таким образом, список кодов образует замкнутое кольцо.
Смысловое кодирование – это кодирование, в котором в качестве ис-
ходного алфавита используются не только отдельные символы (буквы), но
и слова и даже наиболее часто встречающиеся фразы.
Рассмотрим пример одноалфавитного и многоалфавитного смыслово-
го кодирования.
Пример. Открытый текст: "19.9.1992 ГОДА" (табл. 2.10).
2.10. Таблица кодирования
Элементы откpытого текста Коды
1 089 146 214 417
2 187 226 045 361
9 289 023 194 635
ГОД 031 155 217 473
. 786 432 319 157
Закодированное сообщение при одноалфавитном кодировании:
"089 289 786 289 786 089 289 289 187 031".
Закодированное сообщение при многоалфавитном кодировании:
"089 289 786 023 432 146 194 635 187 031" (при многоалфавитном ко-
дировании одинаковые символы заменяются кодами из следующего столб-
ца).
Среди различных кодов, применяемых для кодирования естественных
языков, особый интерес вызывает код Хаффмена, который позволяет сжи-
мать открытый текст. Суть его состоит в присваивании наиболее часто
встречающимся буквам наиболее коротких кодов.
Строка двоичных символов кодов Хаффмена единственным образом
разлагается на коды символов (такие коды называются префиксными).
Пример. Закодированное кодом Хаффмена сообщение имеет вид:
"01101000100000010101111000100000".
Пользуясь деpевом для английского языка, получаем 0110=S.
Далее снова начинаем движение из вершины: 100=E; 01000=C;
00010=U; 1011=R; 1010=I; 001=T; 00000=Y.
Открытый текст: "SECURITY".
2.7.5. ДРУГИЕ МЕТОДЫ
Широкое применение персональная ЭВМ (ПЭВМ) сделало актуальной
задачу защиты хранящихся данных (файлов). Для защиты файлов могут
быть применены рассмотренные методы шифрования и кодирования.
Специфика применения ПЭВМ позволяет реализовать дополнитель-
Страницы
- « первая
- ‹ предыдущая
- …
- 46
- 47
- 48
- 49
- 50
- …
- следующая ›
- последняя »
