Для регистрации на сайте некоторой страны пользователю необходимо придумать пароль длиной ровно 11 символов. в пароле можно использовать десятичные цифры и 12 различных символов местного алфавита, причем все буквы используются в двух начертаниях – строчные и прописные. каждый символ кодируется одинаковым и минимально возможным количеством бит, а каждый пароль – одинаковым и минимально возможным целым количеством байт. определите объем памяти в байтах, необходимый для хранения 60 паролей
N = 10 + 12 *2 = 34
Kпаролей = 60
Ic2 - ?
N = 2* I ( в степени I )
34 = 2*I
I = 6 бит
Ic 1 = K * I
Ic1 = 11*6 =66бит = 9 байт (приблизительно, т.к. нам нужно целое количество байтов)
=> Ic2 = Ic1 * K паролей
Ic2 = 9 * 60 = 540 байт
ответ: 540
Длина пароля составляет 11 символов.
В пароле можно использовать десятичные цифры и 12 различных символов местного алфавита, причем все буквы используются в двух начертаниях – строчные и прописные.
Всего в пароле может быть 10 десятичных цифр (от 0 до 9) и 12 символов алфавита (по 2 начертания каждого символа), итого 22 возможных символа.
Чтобы закодировать один символ, необходимо минимально возможным количеством бит представить 22 возможных символа.
Так как все символы кодируются одинаковым количеством бит, рассчитаем, сколько байт нужно для хранения одного символа:
Для хранения одного символа необходимо:
log2(количество возможных символов) = log2(22) бит
Так как целое количество бит является минимальным для кодирования символа, округлим эту величину вверх до целого числа байт:
1 байт = 8 бит
Следовательно, для хранения одного символа понадобится 2 байта.
Теперь, чтобы рассчитать объем памяти в байтах, необходимый для хранения 60 паролей, нужно умножить длину пароля на количество паролей:
Объем памяти в байтах = длина пароля * количество паролей * количество байт на символ
Объем памяти в байтах = 11 * 60 * 2 = 1320 байт
Итак, для хранения 60 паролей длиной 11 символов, необходимо 1320 байт памяти.