"Информатика (базовый и углублённый уровни) (в 2 частях)", Поляков К.Ю., Еремин Е.А.
Алфавитный подход позволяет оценить количество информации в сообщении по числу символов в используемом алфавите и длине сообщения. Он нужен, чтобы сравнивать объёмы текстов и выполнять расчёты, не анализируя смысл каждого слова. Если все символы считаются равновероятными, один символ несёт log₂N бит, где N — мощность алфавита. Для сообщения из K символов эту величину умножают на K.
Текст подготовлен нейронной сетью по теме параграфа и не заменяет учебник — важные факты и формулировки сверяйте с ним.
Алфавит сообщения — конечный набор символов, которыми можно записывать сообщения. Например, для записи чисел могут использоваться цифры от 0 до 9, а для текста — буквы, знаки препинания и пробел. Алфавит задаёт, какие знаки доступны для кодирования, поэтому без него нельзя определить количество возможных вариантов записи.
Мощность алфавита N — количество различных символов в нём. Каждый знак учитывается один раз: повторения буквы в тексте не увеличивают мощность алфавита. Эта величина нужна, чтобы оценить, сколько вариантов можно выбрать при записи очередного символа.
Информационный вес символа i — количество информации, которое несёт один символ. Если все символы равновероятны, его находят по формуле i = log₂N бит. Вес показывает, сколько информации соответствует одному выбору из алфавита, и позволяет перейти от отдельных знаков к целому сообщению.
Информационный объём сообщения I — суммарное количество информации в его символах. Для сообщения из K символов при равновероятности знаков используют формулу I = K·log₂N бит. Здесь K — длина конкретного сообщения, поэтому объём зависит и от размера алфавита, и от числа записанных символов.
Представим, что нужно выбрать один символ из N равновероятных вариантов. Один двоичный разряд различает два варианта, два разряда — четыре, три — восемь; каждый следующий разряд удваивает число различимых комбинаций. Поэтому i разрядов дают 2ⁱ вариантов, а число бит, соответствующее выбору символа, связывают с количеством возможных символов.
Чтобы получить формулу веса, приравняем число вариантов в алфавите к числу двоичных комбинаций: N = 2ⁱ. Выразим показатель степени через логарифм по основанию 2: i = log₂N. Когда N — степень двойки, результат целый: при N = 8 получается i = 3 бита, потому что трёх разрядов хватает для восьми комбинаций.
Если мощность алфавита не является степенью двойки, логарифм обычно получается нецелым. Например, log₂5 примерно равен 2,32. Это теоретическая оценка количества информации на символ; если каждому знаку назначают код одинаковой длины в целых битах, может понадобиться округлить число разрядов вверх.
В сообщении из K символов вес каждого знака складывается, поэтому информационный объём находят умножением: I = K·i = K·log₂N. Сначала определяют число бит на один символ, затем учитывают, сколько символов записано. Такой расчёт предполагает равновероятность знаков и не учитывает их смысл.
Результат формулы выражен в битах. Чтобы получить байты, нужно разделить число бит на 8, поскольку 1 байт = 8 бит; например, 2400 бит составляют 300 байт. Алфавитная оценка не всегда равна размеру реального файла: на него влияют способ кодирования символов, сжатие и служебные данные, которые добавляет формат файла.
| Что рассматривается | Обозначение | Формула или способ определения | Единица измерения |
|---|---|---|---|
| Мощность алфавита | N | Количество различных символов | Символы |
| Информационный вес символа | i | i = log₂N | Биты |
| Количество символов в сообщении | K | Подсчёт всех символов сообщения | Символы |
| Информационный объём сообщения | I | I = K·log₂N | Биты |
| Перевод битов в байты | — | Количество битов разделить на 8 | Байты |
Таблица помогает выбрать нужную формулу: сначала определите, что известно — размер алфавита или длина сообщения. Для веса одного символа достаточно N, а для объёма нужно знать ещё и K. При переводе результата в байты не забудьте разделить число бит на 8.
Задача 1. Алфавит содержит 16 символов. Определите информационный вес одного символа. Нужно узнать, сколько двоичных разрядов различает все варианты, или подставить мощность алфавита в формулу i = log₂N.
Ответ: информационный вес одного символа равен 4 битам. Четырёх двоичных разрядов достаточно, чтобы закодировать 16 разных вариантов.
Задача 2. Сообщение содержит 500 символов, записанных алфавитом из 32 символов. Найдите информационный объём в битах и байтах. Сначала найдём вес одного знака, затем умножим его на количество знаков и переведём результат в байты.
Ответ: информационный объём равен 2500 битам, или 312,5 байта по алфавитной оценке. Если речь идёт о размере файла, он может быть другим из-за способа кодирования и хранения данных.
Задача 3. В сообщении из 200 символов информационный объём равен 1600 битам. Найдите мощность алфавита при условии равновероятности символов. Сначала определим, сколько информации приходится на один символ, а затем восстановим N из равенства i = log₂N.
Ответ: мощность алфавита равна 256 символам. Проверка: один символ такого алфавита несёт 8 бит, а 200 символов — 200·8 = 1600 бит.
Мощность алфавита N путают с длиной сообщения K. Это происходит потому, что обе величины связаны с символами, но отвечают на разные вопросы: N считает разные знаки, а K — все знаки конкретного сообщения, включая повторения. Перед вычислением подпишите каждую величину и проверьте, что именно дано в условии.
Иногда вместо логарифма по основанию 2 берут другой логарифм или считают вес символа равным N. Так ошибаются, забывая, что биты связаны с двоичными комбинациями: i разрядов дают 2ⁱ вариантов. Проверка простая: если i = 3, число вариантов должно быть 2³ = 8, а не 3.
При вычислении объёма забывают умножить вес символа на количество символов. Тогда получают информацию только для одного знака, хотя в сообщении их K. Проверьте, что в записи есть формула I = K·i и что при увеличении длины сообщения вдвое объём тоже увеличивается вдвое.
Биты и байты принимают за одну и ту же единицу или при переводе умножают на 8. В байте помещается 8 бит, поэтому переход от битов к байтам выполняют делением на 8. Для самопроверки используйте обратное действие: умножьте полученные байты на 8 и убедитесь, что вернулись к исходному числу бит.
Для понимания формулы i = log₂N нужны знания о двоичной системе счисления и степенях числа 2. Полезно помнить, что 2ⁱ показывает количество комбинаций, которые можно составить из i двоичных разрядов. Логарифм по основанию 2 отвечает на обратный вопрос: в какую степень нужно возвести 2, чтобы получить N.
Алфавитный подход применяют, когда оценивают объём текстового сообщения по числу символов и размеру набора знаков. Эта оценка помогает обсуждать кодирование информации, где символам сопоставляют двоичные последовательности. При анализе файлов нужно отдельно учитывать, что реальный способ кодирования и служебная информация могут менять занимаемый объём.
Почему информационный вес символа вычисляют через логарифм по основанию 2?
Информация измеряется в битах, а один бит позволяет различить два равновероятных варианта. i бит позволяют различить 2ⁱ вариантов, поэтому для алфавита из N символов нужно решить уравнение 2ⁱ = N. Отсюда i = log₂N.
Как найти информационный вес символа, если мощность алфавита не является степенью двойки?
Подставьте N в формулу i = log₂N и вычислите значение логарифма, при необходимости округлив его. Например, для N = 5 получается примерно 2,32 бита. Это теоретический вес символа; для записи каждого символа одинаковым целым числом бит может потребоваться округление вверх.
Чем мощность алфавита отличается от длины сообщения?
Мощность N показывает, сколько разных символов доступно для записи сообщений. Длина K показывает, сколько символов содержится в конкретном сообщении, включая повторяющиеся. Например, слово из десяти букв может быть записано алфавитом, содержащим десятки разных символов.
Как перевести информационный объём из битов в байты?
Количество битов нужно разделить на 8, потому что один байт содержит 8 бит. Например, 1600 бит — это 200 байт. Если число битов не делится на 8, результат можно записать дробным числом байтов или округлить в соответствии с задачей.
Всегда ли объём файла совпадает с объёмом информации, рассчитанным алфавитным способом?
Нет. Алфавитный расчёт опирается на равновероятность символов и рассматривает только их количество. В файле размер зависит также от кодирования, сжатия и служебных данных, поэтому может отличаться от теоретической оценки.
§ 8. Алфавитный подход к измерению количества информации