Что проверяет задание
Нужно связать количество информации, время передачи, разрешение изображения, параметры звука или пропускную способность канала. Все величины должны быть в согласованных единицах.
Определения
Бит, минимальная единица информации: один выбор из двух равновозможных вариантов.
Байт, 8 бит. Дальше обычно используют двоичные приставки: 1 КиБ = 2¹⁰ байт, 1 МиБ = 2²⁰ байт, 1 ГиБ = 2³⁰ байт. Если в условии явно сказано «10³» и «10⁶», используют десятичные приставки.
Мощность алфавита N, число различных символов. Один символ тогда несёт log₂ N бит, если кодирование равномерное и все символы допустимы.
Информационный объём сообщения, число бит (или байт), нужных, чтобы хранить или передать это сообщение.
Равномерный код, каждый символ занимает одно и то же число бит. Это число не меньше ⌈log₂ N⌉.
Изображение: разрешение, число пикселей по ширине и высоте. Общее число пикселей, произведение этих чисел.
Глубина цвета, сколько бит отведено на один пиксель. От неё зависит, сколько различных цветов доступно: 2^(глубина).
Палитра, набор допустимых цветов. Если палитра задана отдельно, её тоже нужно хранить, если об этом сказано в условии.
Звук: частота дискретизации, сколько отсчётов берут за одну секунду.
Разрядность квантования, сколько бит в одном отсчёте одного канала.
Моно / стерео, один канал или два. Объём звука умножается на число каналов.
Пропускная способность канала, сколько бит (обычно в секунду) канал способен передать. Иногда её дают в байтах в секунду.
Время передачи, объём данных, делённый на пропускную способность, если нет накладных расходов. Если сказано про служебную информацию или сжатие, её учитывают отдельно.
Согласование единиц
Нельзя делить килобайты на килобиты в секунду, не приведя всё к битам или ко всем байтам. Коэффициент 8 между битами и байтами, самая частая причина неверного порядка.
Общий алгоритм решения
- Выписать, какая величина неизвестна: объём, время, разрешение, глубина, частота, скорость канала.
- Записать формулу связи величин из условия, не подставляя числа.
- Перевести все данные в одни единицы.
- Подставить числа и упростить степени двойки отдельно от десятичных приставок.
- Если кодирование символов, сначала найти минимальную длину кода, затем умножить на число символов.
- Проверить, не забыл ли условие про два канала, про палитру, про сжатие или про то, что часть пакета служебная.
