[Список тем] [Вступление к этой теме] Страницы темы: [1] [2] [3]
Вопросы кодирования издавна играли заметную роль в математике.
Определение |
---|
Кодирование - это представление одних объектов при помощи других. |
Ранее средства кодирования играли вспомогательную роль и не рассматривались
как отдельный предмет математического изучения, но с появлением компьютеров
ситуация радикально изменилась. Кодирование буквально пронизывает
информационные технологии и является центральным вопросом при решении самых
разных (практически всех) задач программирования:
Само составление текста программы часто и совершенно справедливо называют кодированием.
Не ограничивая общности, задачу кодирования можно сформулировать следующим
образом.
Пусть заданы алфавиты А = {a1, ..., an}, В =
{b1, ..., bm} и функция F: S
В*, где S — некоторое множество слов в алфавите А, S
А*. Тогда
Определение |
---|
функция F называется кодированием, A - первичным алфавитом, B - вторичным, элементы множества S — сообщениями, а элементы = F( α ), α S, B* — кодами (соответствующих сообщений). Обратная функция F-1 (если она существует!) называется декодированием. |
Если |В| = m, то F называется m-ичным
кодированием. Наиболее распространенный случай В = {0, 1} —
двоичное кодирование. Именно этот случай рассматривается в последующих
разделах; слово “двоичное” опускается.
Типичная задача теории кодирования формулируется следующим образом: при
заданных алфавитах А, В и множестве сообщений S найти такое
кодирование F, которое обладает определенными свойствами (то есть
удовлетворяет заданным ограничениям) и оптимально в некотором смысле.
Критерий оптимальности, как правило, связан с минимизацией длин кодов.
Свойства, которые требуются от кодирования, бывают самой
разнообразной природы:
Большое значение для задач кодирования имеет природа множества сообщений
S. При одних и тех же алфавитах А, В и требуемых свойствах
кодирования F оптимальные решения могут кардинально отличаться для
разных S. Для описания множества S (как правило, очень большого
или бесконечного) применяются различные методы:
[Список тем] [Вступление к этой теме] Страницы темы: [1] [2] [3]