Решение: Объём памяти для паролей
При регистрации в компьютерной системе каждому пользователю выдаётся пароль, состоящий из 15 символов и содержащий только символы из 12-символьного набора: A, B, C, D, E, F, G, H, K, L, M, N. В базе данных для хранения сведений о каждом пользователе отведено одинаковое и минимально возможное целое число байт. При этом используют посимвольное кодирование паролей, все символы кодируют одинаковым и минимально возможным количеством бит. Кроме собственного пароля, для каждого пользователя в системе хранятся дополнительные сведения, для чего отведено 12 байт на одного пользователя. Определите объём памяти в байтах, необходимый для хранения сведений о 100 пользователях.
Решение по шагам
4 шагаДля кодирования одного символа выбираем минимальное одинаковое число бит $i$, такое что количество кодов не меньше 12:
$$2^3 < 12 \leq 2^4,\quad i=4$$Объём пароля составляет:
$$15 \cdot 4 = 60\text{ бит} = 7{,}5\text{ байт}$$Так как для каждого пользователя отводится целое число байт, пароль занимает 8 байт. С учётом дополнительных сведений на одного пользователя требуется:
$$8 + 12 = 20\text{ байт}$$Для 100 пользователей необходимый объём памяти равен:
$$20 \cdot 100 = 2000\text{ байт}$$Где здесь ошибаются
Использовать 3 бита для символа, хотя $2^3=8<12$.
Не округлять объём одного пароля вверх до целого числа байт.
Забыть добавить 12 байт дополнительных сведений на каждого пользователя.