ВСЮ ЗАДАЧУ РЕШАТЬ НЕ НУЖНО, ТОЛЬКО СКАЖИТЕ, ЗА СКОЛЬКО БАЙТ ПРИНЯТЬ ДИАПАЗОН от 1 до...

0 голосов
298 просмотров

ВСЮ ЗАДАЧУ РЕШАТЬ НЕ НУЖНО, ТОЛЬКО СКАЖИТЕ, ЗА СКОЛЬКО БАЙТ ПРИНЯТЬ ДИАПАЗОН от 1 до 1200(ПОЧЕМУ). ЯВНО НЕ 1 БАЙТ, Т.К. 1 Б ОТ 0 ДО 255.
Сотрудникам компании выдают электронную карту, на которой записаны их личный код, номер подразделения (целое число от 1 до 1200) и дополнительная информация. Личный код содержит 17 символов и может включать латинские буквы (заглавные и строчные буквы различаются), десятичные цифры и специальные знаки из набора @#$%^&*(). Для хранения кода используется посимвольное кодирование, все символы кодируются одинаковым минимально возможным количеством битов, для записи кода отводится минимально возможное целое число байтов. Номер подразделения кодируется отдельно и занимает минимально возможное целое число байтов. Известно, что на карте хранится всего 48 байтов данных. Сколько байтов занимает дополнительная информация?


Информатика (374 баллов) | 298 просмотров
Дано ответов: 2
0 голосов
Правильный ответ

Выбираем из условия все. что касается номера подразделения (именно он имеет диапазон от 1 до 1200). Итак:


- номер подразделения (целое число от 1 до 1200);


- номер подразделения кодируется отдельно и занимает минимально возможное целое число байтов.


Чтобы закодировать число 1200, нужно 11 бит.

Действительно, 2¹⁰ = 1024, 2¹¹ = 2048 и 1024 < 1200 < 2048.

11 бит - это 11/8 = 1 целая и 3/8 байта. Округляем до целых в большую сторону, получаем 2 байта.

(2.0k баллов)
0 голосов

1) 1 байт=8бит, 2^8=256...2^10=1024 -мало, 2^11=2048 -годится, целое число 1200<2048 влезет в 11 бит (разрядов) двоичного представления, то есть 1 байт + 3 бита второго байта. <br>2) при посимвольном кодировании расходуется 1 байт/символ (ну или 1 символ/ байт), получается 17Б на личный код
3) итого 17+2= 19 байт минимум, 48-19=29Б доп.информации

(47.4k баллов)