Главная страница Случайная страница КАТЕГОРИИ: АвтомобилиАстрономияБиологияГеографияДом и садДругие языкиДругоеИнформатикаИсторияКультураЛитератураЛогикаМатематикаМедицинаМеталлургияМеханикаОбразованиеОхрана трудаПедагогикаПолитикаПравоПсихологияРелигияРиторикаСоциологияСпортСтроительствоТехнологияТуризмФизикаФилософияФинансыХимияЧерчениеЭкологияЭкономикаЭлектроника |
Экономное кодирование ⇐ ПредыдущаяСтр 2 из 2
Сведния о веороятность появления различных символов в сообщении могли бы сделать кодирование гораздо более экономным. Рассмотрим пример: Сообщение о том, что бутерброд упал маслом вниз несет в себе менее 1 бита информации. Но, как известно, со стола бутерброд падает маслом вниз почти всегда. И даже в том случае, если м будем бросать будерброд несколько раз, а результаты экспериментов будем записывать символами 0 и 1, то и в среднем один символ полученного двоичного кода будет нести менее одного бита информации в среднем. Вывод: Кодирование с учетом появления различных символов в сообщении можно сделать более экономным, чем кодирование, осуществленное в предположении равной частоты их появления.
Практический пример экономного кодирования Для кодирования фамилий мы можем использовать 32-символьный алфавит (приравняв значения букв " Е" и " Ё"). Для кодирования алфавита состоящего из 32 символов достаточно 5 бит (). К примеру, фамилия Белов несет в себе 25 бит информации согласно алфавитному подходу. С учетом частоты появления русских букв и закона аддитивности информации информативность этой же фамилии равна 23 битам. Можно использовать другой подход к измерению информации, если отдельно кодировать корни фамилий и их окончания. Тогда можно обойтись меньшим количеством бит. Так, окончание " ов" встречается как минимум в половине мужских русских фамилий, и согласно нашему подходу, будет нести в себе один бит информации. Корень " Бел" встречается, к примеру, один раз на 128 фамилий, следовательно для его кодирования необходимо 7 бит. Тогда общий код фамилии " Белов" теоретически может занимать всего лишь один байт!
|