Общее о кодировках.
KOI8-R – кодировка, использующая коды ASCII для символов с кодами от 0 до 127 и русские буквы в кодировке KOI8 для символов с кодами от 128 до 255. Была создана в 1992 году для использования в операционной системе Unixи совместимых с ней системах.
Unicode – это стандарт, который определяет кодировку символов для различных языков и письменностей. Он используется для того, чтобы различные приложения и системы могли правильно обрабатывать и отображать символы на разных языках. Кодировка Unicodeможет быть представлена в разных форматах, таких как UTF-8- Кодировка, в которой каждый символ кодируется 8 битами, UTF-16-Кодировка, в которой каждый символ кодируется 16 битами и UTF-32-Кодировка, в которой каждый символ кодируется 32 битами.
UTF-32 – это кодировка Unicode, в которой каждый символ представлен 32-битными кодами. Она позволяет кодировать все символы Unicode, но из-за большого размера кода она не очень эффективна для хранения и передачи данных. Вместо нее обычно используются более компактные кодировки, такие как UTF-8 или UTF-16.
Кодировки
KOI8-R – кодировка, использующая коды ASCIIдля символов с кодами от 0 до 127 и русские буквы в кодировке KOI8 для символов с кодами от 128 до 255.
-
от 0 до 127, 0 – 27 – русские буквы без символов (2^7-n), где n=1 ячейке памяти выделенной на знак +/-;
-
от 128 до 255, 27 -28 -символы (2^8-n), где n=1 ячейки памяти, выделенной на знак +/-
Пример
Сообщение, содержащее 40 байт, будет содержать 40 символов кириллицы.
UTF-32 – UTF-32 (2^32-n). это кодировка Unicode,в которой каждый символ представлен 32-битными кодами.
(2^32-n) – Она позволяет кодировать все символы Unicode, но из-за большого размера кода она не очень эффективна для хранения и передачи данных. Вместо нее обычно используются более компактные кодировки, такие как UTF-8 (2^8-n) или UTF-16 (2^16-n).
Каждый символ русского алфавита в UTF-8, UTF-16 кодируется 2 байтами или 16 битами. (UTF-32 – 4 байтами или 32 битами)
Пример
Сообщение в кодировке UTF-8, содержащее 40 байт, будет содержать 20 символов кириллицы.
Задача 1.
Рассказ, набранный на компьютере, содержит 15 страниц, на каждой странице 50 строк, в каждой строке 43 символов. Определите информационный объем рассказа в Кбайтах в кодировке Windows, в которой каждый символ кодируется 8 бит.
Решение:
Для начала, рассчитаем количество символов в тексте.
15 страниц * 50 строк * 43 символа =32250 символов.
Информационный объем текста равен 32250 байт.
В одном килобайте 1024 (2^10) байт, значит информационный объем текста равен:
32250 / 1024 = 31.5 Кбайт
Ответ: 31.5 Кбайт.
Задача 2.
В одной из кодировок Unicode каждый символ кодируется 16 битами. Вова написал текст (в нем нет лишних пробелов): «еж, лев, слон, олень, тюлень, носорог, крокодил, аллигатор — дикие животные». Ученик вычеркнул из списка название одного из животных. Заодно он вычеркнул ставшие лишними запятые и пробелы — два пробела не должны идти подряд.
При этом размер нового предложения в данной кодировке оказался на 16 байт меньше, чем размер исходного предложения. Напишите в ответе вычеркнутое название животного.
Решение:
Чтобы определить размер каждого символа в байтах, нужно разделить его размер в битах на 8 (так как в одном байте 8 бит), получается, что один символ кодируется примерно 2 байтами.
Значит, изменение размера предложения на 16 байт означает, что ученик вычеркнул 8 символов (2 байта * 4 животных = 16 байтам).
Поскольку названия животных состоят из одного слова, лишние пробелы и запятые могли быть только между словами.
Следовательно, ученик вычеркнул слово “тюлень”.
Ответ: Тюлень.
Задача 3.
Рассказ, набранный на компьютере, содержит 8 страниц, на каждой странице 40 строк, в каждой строке 48 символов. Определите информационный объем рассказа в Кбайтахв кодировке Windows (1 символ=1 байт), в которой каждый символ кодируется 8 бит.
Решение:
Информационный объем одного символа равен 8 бит = 1 байт.
Так как в каждой строке по 48 символа, информационный объем одной строки составляет 48 байт.
Объем информации на одной странице равен
40 строкам * 48 байт/строку = 1920 байт. (K)
Так как рассказ содержит 8 страниц, общий информационный объем будет равен
8 страниц * 1920 байт/страница = 15360 байт.
Осталось перевести объем информации из байтов в килобайты:
15360 байт / 1024 = 15 Кбайт.
Ответ: 15 Кбайт.
Ответы