Задание:
Автоматическое устройство осуществило перекодировку информационного сообщения на русском языке, первоначально записанного в 16-битном коде Unicode, в 8-битную кодировку КОИ-8. При этом информационное сообщение уменьшилось на 40 байт. Какова длина сообщения в символах?
1) 5
2) 20
3) 40
4) 320
Ответ: 3
Решение:
1) Начнем с того, что известно:
Перекодировка из 16-битного кода в 8-битную одного и того же сообщения, следовательно объем сообщения уменьшилось ровно в 2 раза.
2) В 16-битном коде, вес одного символа - 2 байта
В 8-битном вес одного символа - 1 байт
3) Проверим ответы:
Допустим символов было 5:
5 символов по 2 байта = 10 байт
стало 5 символов по 1-ому байту = 5 байт , уменьшилось в 2 раза и всего на 5 байт, а нам нужно, чтоб уменьшилось на 40 байт.
Возьмем 3 вариант (40 символов)...
Всего 40 символов по 2 байта = 80 байт
После перекодировки стало 40 символов по 1 байту = 40 байт
Уменьшилось на 40 байт, что нам и нужно... Итого: 40 символов.
Второй вариант решения можно составить обычное уравнение:
16 бит = 2 байта
8 бит = 1 байт
x = 2x - 40
-x = - 40
x = 40
Ответ, те же 40 символов.