Воскресенье, 06.10.2024, 04:26
Персональный сайт преподавателя информатики
Приветствую Вас Гость | RSS
Меню сайта
Статистика

Онлайн всего: 2
Гостей: 2
Пользователей: 0

Система задач на кодирование текстовой информации.


В задачах данного типа используются следующие понятия: кодирование, код, кодовая таблица (таблица кодировки). В задачах могут быть использованы следующие таблицы кодировки ASCII, Unicode, ISO, DOS, MAC, КОИ-8.


Решение задач на кодирование текстовой информации.

Задача 1. Текст, состоящий из 142 символов, закодирован с помощью таблицы кодировок Unicode. Определите количество информации (в битах) содержащейся в тексте.

Решение. Воспользуемся формулой: I= K×i, где I- количество информации, K- количество символов в тексте, i – информационный вес одного символа.

В таблице кодировок Unicode, для хранения каждого символа используется 2 байта. В тесте 142 символа, следовательно, I= 142×2=284байта.

Переводим из одной единицы измерения в другую, так как 1байт=8бит, то 284байт×8бит= 2272 бит.

Ответ. Информационный объем текста 2272бит.


Задача2. Сообщение из 118 символов было записано в 8-битной кодировке Windows-1251, после вставки в текстовый редактор сообщение было перекодировано в 16-битный код Unicode. На какое количество информации увеличилось количество памяти, занимаемое сообщением?

Решение. В кодировке Windows-1251, для хранения одного символа используется 8 бит, вычислим количество информации в сообщение. I= K×i, следовательно I=118×1=118байт.

В кодировке Unicode, для хранения одного символа используется 16 бит, тогда количество информации в сообщение будет равно: I=118×2=236байт.

В задачи стоит вопрос, на какое количество информации увеличилось количество памяти, для этого необходимо найти разность полученных объемов. 236-118=118байт.

Ответ: на 118 байт увеличилось количество памяти занятое сообщением.


Задача3. Автоматическое устройство осуществило перекодировку информационного сообщения на русском языке, первоначально записанного в 16-битном коде Unicode, в 8-битную кодировку КОИ-8. При этом количество информации уменьшилось на 480бит. Какова длина сообщения в символах?

Решение. Обозначим количество символов в сообщении через х.

Составим уравнение: количество бит, которое было первоначально, минус количество бит после перекодировки равно 480 бит.

16х-8х=480,

8х=480,

х=480/8,

х=60 символов.

Ответ: сообщение содержит 60 символов.


Задача4. С помощью последовательности десятичных кодов 99 111 109 112 117 116 101 114 закодировано слово computer. Какая последовательность десятичных кодов будет соответствовать этому же слову, записанному прописными буквами?

Решение. Таблица кодировок сначала содержит прописные буквы в алфавитном порядке, а затем строчные. Так как разница между десятичным кодом строчной буквы латинского алфавита и десятичным кодом соответствующей прописной буквы равна 32, то десятичный код прописной буквы С равен 99-32=67.

Аналогичным образом находятся остальные десятичные коды. 111-32=79, 109-32=77, 112-32=80, 117-32=85, 116-32=84, 101-32=69, 114-32=82.

Последовательность десятичных кодов слова COMPUTER составляет 67 79 77 80 85 84 69 82.

Ответ. 67 79 77 80 85 84 69 82.


Задача5. Для кодирования букв А, Б, В, Г решили использовать двухразрядные последовательные числа (от 00 до 11 соответственно). Какая получиться последовательность, если таким способом закодировать последовательность символов ВАБВГАБГ и записать результат шестнадцатеричным кодом?

Решение. Для записи текстовой информации необязательно использовать стандартные 8-битные и 16-битные кодовые таблицы. Если количество различных символов в сообщении мало, можно использовать особые, короткие, коды для записи каждого символа. Последовательность нулей и единиц, которыми кодируются символы сообщения, называются кодовыми словами. Если вероятность появления каждого символа сообщения одинакова, то символы кодируют кодовыми словами одинаковой длины. Составим таблицу кодовых слов. Для этого выпишем кодовое слово для каждой буквы.

Закодируем данную последовательность ВАБВГАБГ символов, для этого выпишем коды букв в том же порядке, что и буквы исходного сообщения, согласно этой таблицы.

1000011011000111

Используя правила перевода из двоичной системы счисления в шестнадцатеричную, сгруппируем получившиеся двоичные цифры по 4 и вместо каждой группы напишем соответствующую шестнадцатеричную цифру.

1000|0110|1100|0111

8      | 6     | C     | 7

Ответ: 86С7.


Задача 6. Для 5 букв латинского алфавита заданы их двоичные коды для некоторых букв из двух бит, для некоторых из трех. Эти коды представлены в таблице:

Определите, какой набор букв закодирован двоичной строкой 0110100011000.

Решение. Так как код записывается начиная с младшего разряда, то необходимо разбить двоичную строку, начиная справа: 0110|100|011|000. При этом видно, что последние три буквы будут C, E, A. Кода 0110 нет, тогда его можно разбить код из двух бит: 01|10, следовательно, 01-В, 10-D. Итак, двоичной строкой 0110100011000 закодирован следующий набор букв BDCEA.

Ответ: двоичной строкой закодирован набор букв BDCEA.


Задачи для самостоятельного решения

Вход на сайт
Поиск
Календарь
«  Октябрь 2024  »
ПнВтСрЧтПтСбВс
 123456
78910111213
14151617181920
21222324252627
28293031
Архив записей
Друзья сайта
  • Официальный блог
  • Сообщество uCoz
  • FAQ по системе
  • Инструкции для uCoz
  • Copyright MyCorp © 2024