Решение: Объём хранения паролей
При регистрации в компьютерной системе каждому пользователю выдаётся пароль, состоящий из 25 символов и содержащий только символы Е, Г, Э, 2, 1, 0, 9. В базе данных для хранения каждого пароля отведено одинаковое и минимально возможное целое число байт. При этом используют посимвольное кодирование паролей, все символы кодируют одинаковым и минимально возможным количеством бит. Кроме собственного пароля, для каждого пользователя в системе хранятся дополнительные сведения, для чего отведено 14 байт на одного пользователя. Определите объём памяти (в байтах), необходимый для хранения данных о 200 пользователях.
Решение по шагам
5 шаговВ алфавите пароля 7 различных символов. Минимальное одинаковое количество бит для кодирования одного символа равно:
$$\lceil \log_2 7 \rceil = 3$$Для пароля из 25 символов требуется:
$$25 \cdot 3 = 75\ \text{бит}$$Переведём объём пароля в байты и округлим вверх до целого числа байт:
$$\left\lceil \frac{75}{8} \right\rceil = 10\ \text{байт}$$На одного пользователя требуется 10 байт для пароля и 14 байт для дополнительных сведений:
$$10 + 14 = 24\ \text{байта}$$Для 200 пользователей необходимый объём памяти равен:
$$24 \cdot 200 = 4800\ \text{байт}$$Где здесь ошибаются
Использовать 2 бита для кодирования символа, хотя 2 бит недостаточно для семи вариантов.
Не округлять 75 бит до целого числа байт.
Забыть добавить 14 байт дополнительных сведений на каждого пользователя.