Присоединиться

8–11 класс·средний уровень

Текст перекодировали из 16-битной кодировки в 8-битную: сколько в нём символов

Условие

Текстовый документ был записан в кодировке, где каждый символ занимает 16 бит. Затем документ без потерь перекодировали в однобайтовую кодировку, и его информационный объём уменьшился на 2 Кбайт. Считая, что сам текст при перекодировке не изменился, определите, сколько символов в этом документе.

Ответ

Ответ и полный разбор откроются после входа

Посмотреть ответ

Решение по шагам

  1. Шаг 1. Понимаем, что при перекодировке меняется, а что нет

    Перекодировка не добавляет и не убирает буквы: количество символов KK остаётся тем же. Меняется только вес одного символа.

    Было: i1=16i_1 = 16 бит =2= 2 байта на символ. Стало: i2=8i_2 = 8 бит =1= 1 байт на символ.

    Объёмы: I1=K⋅2I_1 = K \cdot 2 байт и I2=K⋅1I_2 = K \cdot 1 байт.

  2. Шаг 2. Находим экономию на одном символе

    Разница объёмов складывается из экономии на каждом символе:

    I1−I2=K⋅(2−1)=K⋅1 байтI_1 - I_2 = K \cdot (2 - 1) = K \cdot 1\ \text{байт}

    То есть каждый символ «похудел» ровно на 1 байт. Отсюда общий приём: число символов равно разнице объёмов, делённой на разность весов, а не на один из весов.

Осталось ещё 3 шага

  1. Шаг 3. Переводим уменьшение объёма в байты

  2. Шаг 4. Вычисляем количество символов

  3. Шаг 5. Проверяем условие задачи

Получить полное решение

Бесплатно · займёт минуту

Частые ошибки

  • Переводят 2 Кбайт в 2000 байт и получают 2000 символов.

  • Делят разницу на 2 байта (вес старого символа) вместо разности весов и получают 1024 символа.

  • Отвечают объёмом (2 Кбайт или 4 Кбайт), хотя спрашивают количество символов.

  • Считают, что при перекодировке часть символов теряется, и вводят лишние неизвестные.

Другие задачи по теме «Кодирование информации»