← Все вопросы
ОГЭ задание 7: как закодировать сообщение, если на символ отводится N бит?
5
Попалось задание: «Для кодирования каждого символа используется одинаковое число бит. Сообщение состоит из 60 символов и занимает X байт». То путаюсь, где умножать, где делить, и постоянно забываю про перевод бит в байты. Как раскладывать такие задачи?
1 ответ
10
✓ Принятый ответ — помог автору
Тут работает одна цепочка: сколько символов в алфавите → сколько бит на символ → умножаешь на число символов → переводишь в байты.
- Если в алфавите N символов, то на один символ нужно
iбит, где2^i >= N. Бери ближайшую степень двойки сверху. Например, 30 символов → нужно 5 бит (потому что 2^5 = 32 ≥ 30). - Объём всего сообщения = (число символов) × (бит на символ).
- Чтобы получить байты, дели биты на 8.
Пример: 60 символов, алфавит из 32 знаков → 5 бит на символ → 60 × 5 = 300 бит → 300 / 8 = 37,5 байт. Если в условии говорят, что объём целое число байт, значит данные подобраны так, что делится нацело — перепроверь арифметику.
Главное — не путать, что мощность алфавита даёт биты на один символ, а не на всё сообщение.
Ваш ответ
Войдите, чтобы ответить на вопрос.