
Каждый сотрудник предприятия получает электронный пропуск, на котором записаны личный код
сотрудника, код подразделения и некоторая дополнительная информация. Личный код состоит из 19 символов, каждый из которых может быть одной из 14 допустимых заглавных букв или одной из 8 цифр (цифры 0 и 3 не используются). Для записи кода на пропуске отведено минимально возможное целое число байтов. При этом используют посимвольное кодирование, все символы кодируют одинаковым минимально возможным количеством битов. Код подразделения – натуральное число, не превышающее 1500, он записан на пропуске как двоичное число и занимает минимально возможное целое число байтов. Всего на пропуске хранится 36 байт данных. Сколько байтов выделено для хранения дополнительных сведений об одном сотруднике? В ответе запишите только целое число – количество байтов.

Ответы на вопрос

Ответ:
20 байт
Объяснение:
Рассмотрим личный код. У нас используется алфавит из 14 символов.
2^3<14<2^4, Получается, что один символ кодируется 4 битами.
Всего в личном коде 19 символов. 19*4=76 бит, переводим в байты и округляем до целого значения 76/8 это 10 байт.
Рассмотрим теперь код подразделения. Нам нужно записать 1500 в двоичном коде. 255 - 1 байт, значит на 1500 нам потребуется 6 байт.
Всего на сотрудника выделено 36 байт. Из них используются 10+6=16
Таким образом на личную информацию выделяется 36-16=20 байт



Для решения данной задачи нужно вычислить количество байтов, выделенных для хранения личного кода сотрудника и кода подразделения, а затем вычесть это значение из общего количества байтов на пропуске.
Личный код состоит из 19 символов, каждый из которых может быть одной из 14 допустимых заглавных букв или одной из 8 цифр. Поскольку каждый символ кодируется одинаковым минимальным количеством битов, для кодирования личного кода сотрудника используется 19 * log₂(14 + 8) битов.
Код подразделения является натуральным числом, не превышающим 1500, и записывается как двоичное число. Чтобы найти минимальное количество битов, необходимых для кодирования кода подразделения, нужно найти ближайшую степень двойки, которая больше или равна 1500. В данном случае, это 2048, что соответствует 11 битам.
Таким образом, общее количество битов, выделенных для хранения личного кода сотрудника и кода подразделения, равно 19 * log₂(14 + 8) + 11 битов.
Для перевода битов в байты, делим полученное значение на 8 и округляем до ближайшего целого числа:
(19 * log₂(14 + 8) + 11) / 8 = 36 байтов.
Итак, на хранение дополнительных сведений об одном сотруднике выделено 36 байтов.


Похожие вопросы









Топ вопросов за вчера в категории Информатика







Последние заданные вопросы в категории Информатика
-
Математика
-
Литература
-
Алгебра
-
Русский язык
-
Геометрия
-
Английский язык
-
Химия
-
Физика
-
Биология
-
Другие предметы
-
История
-
Обществознание
-
Окружающий мир
-
География
-
Українська мова
-
Информатика
-
Українська література
-
Қазақ тiлi
-
Экономика
-
Музыка
-
Право
-
Беларуская мова
-
Французский язык
-
Немецкий язык
-
МХК
-
ОБЖ
-
Психология
-
Физкультура и спорт
-
Астрономия
-
Кыргыз тили
-
Оʻzbek tili