← Все вопросы
Как посчитать информационный объём текста (алфавитный подход)?
16
Дано: сообщение из 200 символов, алфавит из 32 символов. Нужно найти объём в байтах. Как это считается? Не понимаю, при чём тут размер алфавита.
3 ответа
22
✓ Принятый ответ — помог автору
Это классический алфавитный подход. Алгоритм в три шага:
- Найди вес одного символа в битах: i = log2(N), где N — размер алфавита. Тут N = 32, а 32 = 2^5, значит i = 5 бит на символ.
- Умножь на количество символов: 200 * 5 = 1000 бит.
- Переведи в байты: 1000 / 8 = 125 байт.
Идея в том, что чем больше алфавит, тем больше бит нужно на один символ. Размер алфавита всегда удобно представлять как степень двойки — тогда i получается целым.
Яна Белова наконец понял про log2, спасибо огромное 🙏 · 6 месяцев назад
Данил Макаров а если алфавит не степень двойки? тогда берут ближайшую большую степень и i округляют вверх · 6 месяцев назад
9
Главное — выучить степени двойки до 2^10, тогда log2 считается в уме мгновенно.
7
i = log2(N) бит на символ, дальше умножаешь на длину и делишь на 8 если нужны байты. Тут получается 125 байт.
Ваш ответ
Войдите, чтобы ответить на вопрос.