Дискретный КС, работающий без помех, является самым простым техническим устройством. Для такого канала наилучшим способом кодирования является система с неравномерными кодами. При этом наиболее вероятные сообщения необходимо передавать короткими кодовыми группами. При этом основанием кода может быть любое число k.
Допустим, передаче подлежит ансамбль (1,2,3…m) с соответствующими вероятностями (Р1, Р2, Р3… Рm). Тогда количество информации
Ii = - log2 Pi (5.1)
где = Рi
Отсюда путем некоторых преобразований можно получить выражение для определения среднего количества разрядов, которые необходимо отвести при передаче символов:
ni = (5.2)
Если среднее количество разрядов не больше дроби, то кодирование оптимальное. Если нет, то говорят что кодирование неоптимальное. В настоящее время разработано множество оптимальных кодов, но классическими являются коды Шеннона-Фано и Хаффмана. Отличительной способностью этих кодов является то, что начало любой кодовой комбинации, с помощью которой кодируется символ, не совпадает с более короткой кодовой комбинацией.
Кодирование сообщения методом Шеннона-Фано