← Все вопросы

ОГЭ задание 7: как закодировать сообщение, если на символ отводится N бит?

Задан 10 месяцев назад406 просмотров1 ответ
5

Попалось задание: «Для кодирования каждого символа используется одинаковое число бит. Сообщение состоит из 60 символов и занимает X байт». То путаюсь, где умножать, где делить, и постоянно забываю про перевод бит в байты. Как раскладывать такие задачи?

1 ответ

10
✓ Принятый ответ — помог автору

Тут работает одна цепочка: сколько символов в алфавите → сколько бит на символ → умножаешь на число символов → переводишь в байты.

  1. Если в алфавите N символов, то на один символ нужно i бит, где 2^i >= N. Бери ближайшую степень двойки сверху. Например, 30 символов → нужно 5 бит (потому что 2^5 = 32 ≥ 30).
  2. Объём всего сообщения = (число символов) × (бит на символ).
  3. Чтобы получить байты, дели биты на 8.

Пример: 60 символов, алфавит из 32 знаков → 5 бит на символ → 60 × 5 = 300 бит → 300 / 8 = 37,5 байт. Если в условии говорят, что объём целое число байт, значит данные подобраны так, что делится нацело — перепроверь арифметику.

Главное — не путать, что мощность алфавита даёт биты на один символ, а не на всё сообщение.

Ваш ответ

Войдите, чтобы ответить на вопрос.