Задание 11
Общая идея этих задач в том, что даётся набор значений, необходимо понять, сколько информации необходимо, чтобы зашифровать один символ из этого набора и сколько - для последовательности символов.
Чаще всего необходимо ещё до подсчёта получить кол-во бит на один символ, понять, какое минимальное число байт необходимо для хранения этих битов и дальше оперировать уже байтами.
Например, если дан набор значений А
, Б
, В
, Г
, Д
, К
содержит 6 элементов,
чтобы понять, сколько бит для него необходимо выделить, следует найти такую минимальную
степень двойки, что она будет больше их количества.
Для 6 минимальная степень двойки, которая больше него - это . Получается, что для хранения одного символа потребуется 3 бита. В одном байте 8 бит, поэтому если в задаче говорится, что каждый символ хранится в целом количестве байт, то для одного символа нам будет достаточно одного байта.
Пример 1
При регистрации в компьютерной системе каждому объекту сопоставляется идентификатор, состоящий из 15 символов и содержащий только символы из 8-символьного набора: А, В, C, D, Е, F, G, H. В базе данных для хранения сведений о каждом объекте отведено одинаковое и минимально возможное целое число байт. При этом используют посимвольное кодирование идентификаторов, все символы кодируют одинаковым и минимально возможным количеством бит.
Кроме собственно идентификатора, для каждого объекта в системе хранятся дополнительные сведения, для чего отведено 24 байта на один объект. Определите объём памяти (в байтах), необходимый для хранения сведений о 20 объектах. В ответе запишите только целое число – количество байт.
алфавит состоит из 8 символов, так как , то на каждый символ нужно выделить не менее
для хранения символов нужно или (с округлением до целого числа байт)
идентификатор + дополнительные сведения занимают
на хранения информации о объектах нужно
Ответ: 600 байт.
Пример 2
Информационная панель может отображать сообщения, состоящие из цифр, причем каждая цифра может быть трёх цветов. Цифры и цвета могут повторяться. Контроллер панели выделяет под каждое сообщение одинаковое и минимальное возможное целое число байт. При этом используется посимвольное кодирование, все символы сообщения кодируются одинаковым минимально возможным количеством бит. Укажите объем памяти в байтах для хранения сообщений.
на панели 10 позиций, каждая позиция – это цифра, которая может гореть одним из трёх цветов
подсчитаем, сколько сигналов можно закодировать с помощью одной позиции панели: выбираем из цифр, и кроме того (независимо от цифры!) один из трёх цветов; поэтому общее количество вариантов равно
для кодирования вариантов нужно битов ($2^4 \leq 30 \leq 2^5)
для кодирования состояния 10 позиций панели нужно битов или , округляем вверх до байтов (на одно сообщение)
на кодирование сообщений требуется
Ответ: 700 байт.
Пример 3
При регистрации в компьютерной системе каждому пользователю выдаётся пароль, состоящий из
символов. Из соображений информационной безопасности каждый пароль должен содержать хотя бы
десятичных цифры, как прописные, так и строчные латинские буквы, а также не менее 2-х символов
из 6-символьного набора: «&», «#», «$», «*», «!», «@»
. В базе данных для хранения сведений
о каждом пользователе отведено одинаковое и минимально возможное целое число байт.
При этом используют посимвольное кодирование паролей, все символы кодируют одинаковым и минимально возможным количеством бит. Кроме собственно пароля, для каждого пользователя в системе хранятся дополнительные сведения, для чего выделено целое число байт; это число одно и то же для всех пользователей. Для хранения сведений о 30 пользователях потребовалось . Сколько байт выделено для хранения дополнительных с ведений об одном пользователе? В ответе запишите только целое число – количество байт.
если бы мы знали точно, сколько цифр и сколько специальных символов содержит пароль и где точно они расположены, можно было бы использовать «раздельное» кодирование: на кодирование цифр использовать по бита (), на кодирование спецсимволов – по 3 бита (), а на кодирование остальных символов (латинских букв) – по 6 бит ()
поскольку количество и месторасположение цифр и спецсимволов а пароле неизвестно, нужно рассматривать полный набор символов:
при этом на каждый символ нужно выделить 7 бит ()
на 11 символов пароля выделяется , округляя вверх до целого числа байт получаем () на пароль
на одного пользователя выделяется
на дополнительную информацию остается
Ответ: 20.
Пример 4
В велокроссе участвуют спортсменов. Специальное устройство регистрирует прохождение каждым из участников промежуточного финиша, записывая его номер с использованием минимально возможного количества бит, одинакового для каждого спортсмена. Каков информационный объем в битах сообщения, записанного устройством, после того как промежуточный финиш прошли велосипедистов?
велосипедистов было , у них разных номеров, то есть, нам нужно закодировать вариантов
по таблице степеней двойки находим, что для этого нужно минимум бит (при этом можно закодировать вариантов, то есть, еще есть запас); итак, бит на один отсчет
когда велосипедистов прошли промежуточный финиш, в память устройства записано отсчетов
поэтому в сообщении информации.
Ответ: 490 бит.
Пример 5
Объем сообщения, содержащего 4096 символов, равен 1/512 части Мбайта. Какова мощность алфавита, с помощью которого записано это сообщение?
в сообщении было символов
объем сообщения
место, отведенное на 1 символ:
бита на символ позволяют закодировать разных символов
поэтому мощность алфавита – символов
Ответ: 16 символов
Пример 6
В зоопарке 32 обезьяны живут в двух вольерах, А и Б. Одна из обезьян заболела. Сообщение «Заболевшая обезьяна живет в вольере А» содержит 4 бита информации. Сколько обезьян живут в вольере Б?
информация в бита соответствует выбору одного из 16 вариантов,
поэтому в вольере живет часть всех обезьян (это самый важный момент!)
всего обезьян – , поэтому в вольере живет
поэтому в вольере Б живут все оставшиеся
Ответ: 30.
Пример 6
В корзине лежат 32 клубка шерсти, из них 4 красных. Сколько бит информации несет сообщение о том, что достали клубок красной шерсти?
красные клубки шерсти составляют 1/8 от всех,
поэтому сообщение о том, что первый вынутый клубок шерсти – красный, соответствует выбору одного из 8 вариантов
выбор 1 из 8 вариантов – это информация в 3 бита (по таблице степеней двойки)
Ответ: 3.
Пример 7
В некоторой стране автомобильный номер длиной символов составляется из заглавных букв (всего используется букв) и десятичных цифр в любом порядке. Каждый символ кодируется одинаковым и минимально возможным количеством бит, а каждый номер – одинаковым и минимально возможным целым количеством байт. Определите объем памяти, необходимый для хранения автомобильных номеров.
всего используется 26 букв + 10 цифр = 36 символов
для кодирования 36 вариантов необходимо использовать 6 бит, так как ,
т.е. пяти бит не хватит (они позволяют кодировать только варианта), а шести уже достаточно
таким образом, на каждый символ нужно бит (минимально возможное количество бит)
полный номер содержит символов, каждый по , поэтому на номер требуется
по условию каждый номер кодируется целым числом байт (в каждом байте – ), поэтому требуется 6 байт на номер (), пяти байтов не хватает, а шесть – минимально возможное количество
на номеров нужно выделить
Ответ – 120.
- если не обратить внимание на то, что каждый номер кодируется целым числом БАЙТ, получаем неверный ответ ( )
- если по невнимательности считать, что каждый СИМВОЛ кодируется целым числом байт, получаем байт на символ и всего (неверный ответ )
- если «забыть» про цифры, получим всего символов, на символ, ( полных ) на каждый номер и неверный ответ (на номеров)