Условие:
В информационной системе хранится информация о составе изделий. Для каждого изделия хранятся код изделия, коды деталей и их количество, а также дополнительные сведения. Код изделия состоит из 25 символов – заглавных латинских букв и цифр – и кодируется минимально возможным целым количеством байтов. При этом используется посимвольное кодирование кодов изделий, все символы кодируются одинаковым и минимально возможным количеством бит. Для хранения данных о деталях каждого изделия выделено 80 блоков, каждый из которых содержит код детали (натуральное число, не превышающее 1 000 000) и количество этих деталей (натуральное число, не превышающее 1000). Каждый такой блок кодируется минимально возможным целым количеством байтов. Для хранения дополнительных сведений о каждом изделии выделяется целое количество байтов, одинаковое для каждого изделия. Известно, что для хранения данных о 32 768 объектах потребовалось 11 Мбайт. Сколько байтов выделено для хранения дополнительной информации об одном объекте?
Решение:
Рассмотрим пошагово, как получить ответ. 1. Код изделия состоит из 25 символов. Допустимые символы – заглавные латинские буквы и цифры, то есть всего 36 вариантов. Для кодирования такого символа требуется минимальное целое число бит b такое, что 2^b ≥ 36. При b = 5: 2^5 = 32 (недостаточно); при b = 6: 2^6 = 64, что подходит. Таким образом, каждый символ кодируется 6 битами. Общее число бит для кода изделия: 25 × 6 = 150 бит. Чтобы уместить 150 бит в целое число байт (1 байт = 8 бит), необходимо взять: ceil(150/8) = ceil(18.75) = 19 байт. 2. Для деталей изделия выделено 80 блоков....
