Кодировка текстовой информации

Таблицы кодировок текста в компьютере

Для кодирования букв и других символов, используемых в печатных документах, необходимо закрепить за каждым символом числовой номер — код. В англоязычных странах используются 26 прописных и 26 строчных букв (A : Z, a : z), 9 знаков препинания (. , : ! » ; ? ( ) ), пробел, 10 цифр, 5 знаков арифметических действий (+,-,*, /, ^) и специальные символы (№, %, _, #, $, &, >, <, |, \) — всего чуть больше 100 символов. Таким образом, для кодирования этих символов можно ограничиться максимальным 7-разрядным двоичным числом (от 0 до 1111111, в десятичной системе счисления — от 0 до 127).

Первой такой 7-разрядной кодовой таблицей была ASCII (American Standard Code for Information Interchange), опубликованная как стандарт в 1963 г. американской организацией по стандартизации American Standards Association (ASA), которая позднее стала именоваться ANSI (American National Standards Institute, http://www.ansi.org/, поэтому данную кодовую таблицу называют также и ANSI). Таблица содержала 32 кода команд или управляющих символов (от 0 до 31), большая часть которых сегодня не используется, и 95 кодов (от 33 до 127) для различных знаков, достаточных для работы с английскими текстами,как показано на рисунке 1.1. На рисунке 1.1 символы построчно имеют следующие коды в шестнадцатеричной системе счисления (в скобках — в десятичной):

  • 1-я строка с 00 по F и далее с 10 по 1F (0 — 15, 16 — 31),
  • 2-я строка с 20 по 2F и 30 — 3F (32 — 47, 48 — 63),
  • 3-я строка с 40 по 4F и 50 — 5F (64 — 79, 80 -95),
  • 4-я строка с 60 по 6F и 70 — 7F (96 — 111, 112 -127).

В данной таблице для преобразования прописных букв в строчные достаточно к коду букву прибавить 32 и наоборот для преобразования строчных в прописные. В последующем данная таблица ASCII была принята как стандарт ведущими международными организациями по стандартизации:

  • ISO/IEC 646:1991 (ISO — http://www.iso.org/ — International Organization for Standardization и IEC — http://www.iec.ch/ — International Electrotechnical Commission — ведущие международные организации по стандартизации, в области электротехники — совместные стандарты),
  • ITU-T Recommendation T.50 (09/92) (The International Telecommunication Union — http://www.itu.int/),
  • ECMA-6 (European Computer Manufacturers Association).

Однако для нашей страны и многих других стран необходимо было добавить в кодовую таблицу символы национальных алфавитов. Для этого было предложено использовать 8-битную кодовую таблицу, которая могла содержать дополнительно ещё 128 символов (с 128 по 255).

В дальнейшем был принят стандарт на 8-битную таблицу ASCII — ISO/IEC 8859, в которой первые 128 символов оставались те же, что и в 7-битной таблице, а символы с 128 по 255 отводились для неанглийских символов. Существует несколько частей этого стандарта:

На рисунке 1.2 представлена вторая половина кодовой таблицы (коды 128-255) для стандарта ISO 8859-5.
Рисунок 1.2. Кодовая таблица ISO 8859-5(коды с 12810 по 25510)
Первые русские ЭВМ использовали 7-битную кодировку символов КОИ-7 (Код Обмена Информацией семибитный — рисунок 1.3), в которой присутствовали прописные латинские буквы, а на месте строчных латинских были русские прописные буквы (кириллица).

Рисунок 1.3.

Таблица символов КОИ-7
Позднее на первых отечественных персональных компьютерах использовалась так называемая , в руководствах к старым матричным принтерам обозначаемая просто как — 8-битная кодовая таблица, вторая половина которой содержала символы псевдографики, русские прописные и строчные буквы (коды с 128 по 255 — рисунок 1.4).

Рисунок 1.4. Кодировка символов
В дальнейшем основной кодировкой русских букв для MS DOS стала «альтернативная кодировка ВЦ Академии Наук СССР» (вторая половина таблицы для кодов 128-255 приведена на рисунке 1.5). Содержит псевдографику (позволяющую в текстовом режиме рисовать рамки из одинарных и двойных линий). Существует несколько модификаций, отличающихся символами в последних 14 позициях. Зарегистрирована в IANA (Internet Assigned Numbers Authority — организация, отвечающая за административное управление в Internet) как IBM866 или CP866.


Рисунок 1.5. Таблица символов DOS Cyrillic (CP866)
С широким распространением операционной системы Microsoft Windows и появлением её национальных локализаций для второй половины таблицы ASCII было введено понятие (code page, CP). Несколько наиболее важных кодировок показаны в таблице 1.1.

Таблица 1.1. Некоторые национальные кодовые страницы (CP) операционной системы Microsoft Windows

Кодировка русских букв в операционной системе Microsoft Windows — CP1251 — показана на рисунке 1.6.
Рисунок 1.6. Таблица символов CP1251
В операционной системе Linux для представления русских букв используется кодировка КОИ-8R (рисунок 1.7), зарегистрированная в IANA как KOI8-R (http://koi8.pp.ru/).


Рисунок 1.7. Таблица символов KOI8-R
Стандартизован зарегистрирован также украинский клон КОИ-8 — KOI8-U (рисунок 1.8), имеющая отличия от KOI8-R во второй строке символов псевдографики.
Рисунок 1.8. Таблица символов KOI8-U
Кириллица Macintosh (компьютеров фирмы Apple), она же CP10007, довольно близка к CP1251. Не зарегистрирована в IANA, но часто обозначается как x-mac-cyrillic (рисунок 1.9).

Рисунок 1.9. Macintosh Cyrillic, CP10007 (charset = x-mac-cyrillic)
В 1991 году в Калифорнии была создана некоммерческая организация Unicode Consortium, в которую входят представители многих компьютерных фирм (Borland, IBM, Lotus, Microsoft, Novell, Sun, WordPerfect и др.), и которая занимается развитием и внедрением стандарта

Диапазон UTF-8 Notes
кодов (binary)
(hexadecimal)
000000 — 00007F 0xxxxxxx Первый бит 0, следующие 7 соотверствуют таблице ASCII
000080 — 0007FF 110xxxxx 10xxxxxx Первые 3 бита 110 — всего используется 2 байта, второй байт начинается с 10
000800 — 00FFFF 1110xxxx 10xxxxxx 10xxxxxx Первые 4 бита 1110 — всего используется 3 байта, второй и третий байты начинаются с 10
010000 — 10FFFF 11110xxx 10xxxxxx 10xxxxxx 10xxxxxx Первые 5 бит 11110 — всего используется 4 байта, второй, третий и четвёртый байты начинаются с 10

Особняком стоит 7-битная, русская кодировка — транслитерация, или транскириллица, когда русские буквы передаются похожими по звучанию английскими primerno takim obrazom. В конце 1997 г. Microsoft подвергла ревизии свои кодовые таблицы и включила в них новый символ евровалюты «Евро», он помещен в позицию 128 (0x80) большинства таблиц и в позицию 136 (0x88) русской таблицы CP1251.

Таким образом, в настоящее время при работе в Интернете и с текстовыми файлами чаще всего Вы можете встретить следующие кодовые страницы русских букв предпочитаемые авторами — пользователями операционных систем:

  • Cyrillic (Windows) — CP1251 — Microsoft Windows;
  • Cyrillic (DOS) — CP866 — MS-DOS (встречается крайне редко);
  • Cyrillic (ISO) — ISO 8859-5 — 8-ми битная таблица ASCII;
  • Cyrillic KOI8-R — используется среди ортодоксальных пользователей операционных систем Linux, по-прежнему не желающих переходить на unicode, и среди html-программистов «старой закалки»;
  • CP10007 — Mac OS (в настоящее время — переход на unicode);
  • UTF-8 — универсальная Unicode кодировка (используется в большинстве Linux и Windows 2008).

ТП ОКМ ОС ТПОИ ДБИ АиЯ 3GL 4GL АСДП к архитектуре DB-интерфейсов

Знаете ли Вы, что объект, Object — Объект в программировании — это программный модуль:
— объединяющий в себе данные (свойства) и операции над ними (методы);
— обладающий свойствами наследования, инкапсуляции и полиморфизма. А объекты взаимодействуют между собой, посылая друг другу сообщения.

Информатика и вычислительная техника / Проектирование экономических информационных систем / 2.2.2. Понятия и основные системы кодирования экономической информации

Для полной формализации экономической информации недо­статочно простой классификации, поэтому проводят следующую процедуру – кодирование. Кодирование – это процесс присвое­ния условных обозначений объектам и классификационным группам по соответствующей системе кодирования. Система кодирования – это совокупность правил обозначения объектов и группировок с использованием кодов. Код – это условное обозна­чение объектов или группировок в виде знака или группы знаков в соответствии с принятой системой. Код базируется на определен­ном алфавите (некоторое множество знаков). Число знаков этого множества называется основанием кода. Различают следующие типы алфавитов: цифровой, буквенныйи смешанный.

Код характеризуется следующими параметрами:

· длиной (L);

· основанием кодирования (А);

· структурой кода, под которой понимают распределение зна­ков по признакам и объектам классификации;

· степенью информативности (I) , рассчитываемой как частное от деления общего количества признаков (R) на длину кода (L):

I = R/L;

· коэффициентом избыточности (Кизб), который определяется как отношение максимального количества объектов (Qmax) к фактическому количеству объектов (Qфакт):

.

Все системы кодирования можно сгруппировать в два под­множества (рис. 2.13): регистрационные и классификационные системы кодирования.

Особенностью регистрационных систем кодированияявляет­ся их независимость от применяемых систем классификации. Ре­гистрационные коды используются для идентификации объектов и передачи информации об объектах на расстояние, поэтому они должны удовлетворять следующим требованиям: минимальности длины кода, однозначности соответствия наименования объек­та и его кода в течение длительного периода времени и защищен­ности кода от помех и ошибок.

Регистрационные коды состоят из двух частей: информаци­онной и контрольной, предназначенной для защиты передавае­мой информации от ошибок.

Контрольная часть может рассчи­тываться по различным алгоритмам, в частности, наиболее упот­ребляемыми являются следующие формулы их расчета:

;

,

где – модуль (простое число, делящееся на единицу и на само себя); – информационные разряды, i – номер разряда; – вес информационного разряда.

К регистрационным системам относятся порядковая и серий­ная системы кодирования.

Порядковая система – это наиболее простая по своему пост­роению система кодирования, суть использования которой зак­лючается в последовательном присвоении каждому объекту кодируемого множества Мо номера его порядка, т.е. в присвоении цифр натурального ряда в порядке расположения объектов. Этот порядок может быть случайным или определяться после предва­рительной группировки объектов, например, по алфавиту. Как правило, порядковую систему применяют для кодирова­ния малозначных, устоявшихся и простых множеств объектов, не требующих предварительной классификации.

Серийная (серийно-порядковая)система кодирования отлича­ется от порядковой тем, что номенклатура кодируемых объектов (М) предварительно должна быть разбита на группировки по од­ному признаку, и каждой группировке должна быть отведена се­рия кодовых обозначений, в пределах которой каждому элемен­ту присваивается свой код по порядку.

Серия обозначений для каждой группировки определяется таким образом, чтобы после присваивания кодов элементам этой группы в ней оставались бы еще свободные номера на случай появления новых объектов.

Классификационные кодыиспользуют для отражения классифи­кационных взаимосвязей объектов и группировок и применяются в основном для сложной логической обработки экономической информации на ЭВМ Отсюда вытекают требования: однозначно­сти отображения классификационных взаимосвязей объектов и их группировок и обеспечения максимальной простоты программи­рования. Группу классификационных систем кодирования можно разделить на две подгруппы в зависимости от того, какую систему классификации используют для упорядочения объектов.

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

Параллельные системыкодирования характеризуются тем, что они строятся на основе использования фасетной системы класси­фикации и коды группировок по фасетам формируются незави­симо друг от друга.

Последовательные и параллельные системы кодирования строятся на базе разрядной или комбинированной системы ко­дирования.

Разрядная системаприменяется для кодирования объектов, определяемых несколькими соподчиненными признаками, ис­пользуемыми для решения экономических задач. Кодируемые объекты систематизируются по классификационным признакам на каждой ступени классификации, каждому признаку отводится определенное число разрядов, в пределах которых кодирование группировок начинается с единицы. При разрядной системе ко­дирования используется так называемое «зависимое» кодирова­ние. Это значит, что классификационные группировки по млад­шим признакам кодируются в зависимости от кода группировки, образованной по старшему признаку. Запас свободных позиций определяется структурой кода.

Код объекта, построенный по этой системе, состоит из такого числа позиций (или числа групп разрядов), сколько было учтено признаков для объектов, поэтому разрядная система кодирования называется иногда позиционной системой. Конкретное значение признака, характеризующего объект, определяется позицией и зна­чением определенного числа в структуре кода. Длина кода зави­сит от числа ступеней классификации, от числа классификацион­ных группировок на каждой ступени и от основания кодирования.

Комбинированная системакодирования, обладая всеми пре­имуществами разрядного кода, применяется для кодирования больших номенклатур (перечней) объектов, которые характери­зуются многими соподчиненными или независимыми признака­ми. Эта система базируется на сочетании принципов построения таких систем кодирования, как разрядная, серийная, порядковая и кода повторения.

Код повторения (мнемокод) – это буквенные или буквенно-цифровые коды, которые характеризуются тем, что в структуру кода переносят часть символьных обозначений объектов с целью повышения мнемоничности кода или для сокращения его длины.

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

Кодирование текстовой информации

Кодирование текстовой, графической и звуковой информации

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

Кодирование информации – это процесс формирования определенного представления информации. В более узком смысле под термином «кодирование» часто понимают переход от одной формы представления информации к другой, более удобной для хранения, передачи или обработки.

Декодирование – преобразование данных из двоичного кода в форму, понятную человеку.

Код — это набор условных обозначений (или сигналов) для записи (или передачи) некоторых заранее определенных понятий.

Двоичное кодирование – один из распространенных способов представления информации. В вычислительных машинах, в роботах и станках с числовым программным управлением, как правило, вся информация, с которой имеет дело устройство, кодируется в виде слов двоичного алфавита.

Двои́чный код — это способ представления данных в виде кода, в котором каждый разряд принимает одно из двух возможных значений, обычно обозначаемых цифрами 0 и 1. Разряд в этом случае называется двоичным разрядом.

Кодирование числовой информации

Сходство в кодировании числовой и текстовой информации состоит в следующем: чтобы можно было сравнивать данные этого типа, у разных чисел (как и у разных символов) должен быть различный код. Основное отличие числовых данных от символьных заключается в том, что над числами кроме операции сравнения производятся разнообразные математические операции: сложение, умножение, извлечение корня, вычисление логарифма и пр. Правила выполнения этих операций в математике подробно разработаны для чисел, представленных в позиционной системе счисления.

Основная система счисления для представления чисел в компьютере – это двоичная позиционная система счисления.

Кодирование текстовой информации

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

Традиционно для кодирования одного символа используется количество информации равное 1 байту. Учитывая, что каждый бит принимает значение 1 или 0, получаем, что с помощью 1 байта можно закодировать 256 различных символов. (28 = 256). Кодирование заключается в том, что каждому символу ставится в соответствие уникальный двоичный код от 00000000 до 11111111 (или десятичный код от 0 до 255).

Основная операция, производимая над отдельными символами текста – это сравнениесимволов.

При сравнении символов наиболее важными аспектами являются уникальность кода для каждого символа и длина этого кода, а сам выбор принципа кодирования практически не имеет значения.

Присвоение символу конкретного кода – это вопрос соглашения, которое фиксируется кодовой таблицей. Важно, чтобы при кодировании и декодировании одного и того же текста использовалась одна и та же таблица.

Кодовая таблица(илитаблица кодировки) – это таблица, содержащая упорядоченный некоторым образом перечень кодируемых символов, в соответствии с которой происходит преобразование символа в его двоичный код и обратно.

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

Чаще всего используют кодировки, в которых на символ отводится 8 бит (8-битные) или 16 бит (16-битные). Современные кодовые таблицы включают в себя международную и национальную части, т.е. содержат буквы латинского и национального алфавитов, цифры, знаки арифметических операций и препинания, математические и управляющие символы, символы псевдографики. В настоящее время для кодировки русских букв используют пять различных кодовых таблиц (КОИ — 8, СР1251, СР866, Мас, ISO), причем тексты, закодированные при помощи одной таблицы, не будут правильно отображаться в другой

Наиболее популярные таблицы перекодировки: ДКОИ-8, ASCII, CP1251, Unicode. Основным отображением кодирования символов является код ASCII.

Рассмотрим таблицу кодов ASCII.

Таблица ASCII разделена на две части. Первая – стандартная – содержит коды от 0 до 127. Вторая – расширенная – содержит символы с кодами от 128 до 255. Первые 32 кода отданы производителям аппаратных средств и называются они управляющие, т.к. эти коды управляют выводом данных. Им не соответствуют никакие символы. Коды с 32 по 127 соответствуют символам английского алфавита, знакам препинания, цифрам, арифметическим действиям и некоторым вспомогательным символам. Коды расширенной части таблицы ASCII отданы под символы национальных алфавитов, символы псевдографики и научные символы.

Главная | Информатика и информационно-коммуникационные технологии | Планирование уроков и материалы к урокам | 10 классы | Планирование уроков на учебный год | Представление текстовой информации в компьютере

>Урок 13
Представление нечисловой информации в компьютере

Представление текстовой информации в компьютере

Изучив эту тему, вы узнаете и повторите:
— как в компьютере представляется текстовая информация;
— что такое ASCII и Unicode;
— как в компьютере представляется графическая информация;
— какие форматы используются при хранении графических файлов;
— как в компьютере представляется звуковая информация;
— какие форматы используются при хранении звуковых файлов.

Закрепление изученного материала.
Решение задач.

I. Используем кодировочные таблицы

№1. Закодируйте с помощью кодировочной таблицы ASCII и представьте в шестнадцатеричной системе счисления следующие тексты:

1) Password; 2) Windows; 3) Информация; 4) Paint.

Решение:

1) Найдите в кодовой таблице ASCII коды соответствующих символов (в десятичной системе счисления)

а) Password → 80 97 115 115 119 111 114 100. б) Windows → 87 105 110 100 111 119 115.

в) Информация → 200 237 244 238 240 236 224 246 232 255 г) Paint → 80 97 105 110 116

2) Переведите коды с помощью калькулятора в шестнадцатеричную систему счисления.

а) 80 97 115 115 119 111 114 100 → 50 61 73 73 77 6F 72 64 б) 87 105 110 100 111 119 115 → 57 69 6E 64 6F 77 73 в) 200 237 244 238 240 236 224 246 232 255 → C8 ED F4 EE F0 EC E0 F6 E8 FF г) 80 97 105 110 116 → 50 61 69 6E 74

Ответ:

а) 50 61 73 73 77 6F 72 64 б) 57 69 6E 64 6F 77 73 в) C8 ED F4 EE F0 EC E0 F6 E8 FF г) 50 61 69 6E 74

№2 Декодируйте с помощью кодировочной таблицы ASCII следующие тексты, заданные шестнадцатеричным кодом:

а) 54 6F 72 6E 61 64 6F; (Tornado) б) 49 20 6С 6F 76 65 20 79 6F 75; (I love you) в) 32 2A 78 2B 79 3D 30.(2+x+y=0)

II. Не используем кодировочные таблицы

№1 Буква «I» в таблице кодировки символов имеет десятичный код 105.
Что зашифровано последовательностью десятичных кодов: 108 105 110 107?

Решение:

Учитываем принцип последовательности кодирования и порядок букв в латинском алфавите и, можно, не обращаться к таблице кодировки символов.

Ответ: Закодировано слово «link»

№2 Десятичный код (номер) буквы «е» в таблице кодировки символов ASCII равен 101.
Какая последовательность десятичных кодов будет соответствовать слову:

1) file; 2) help?

Решение:

Учитываем принцип последовательности кодирования и порядок букв в латинском алфавите:

Ответ:

1) 102 105 108 101 2) 104 101 108 112

III. Используем ПО (текстовый редактор Блокнот).

Блокнот позволяет работать с текстами в кодировках ANSI и Unicode, а также выполнять преобразование из одного формата в другой. Для этого при сохранении документа выберите нужную кодировку в соответствующем поле.

№1. Перейдите от двоичного кода к десятичному и декодируйте следующие тексты:
а) 01010101 01110000 0100000 00100110 00100000 01000100 1101111 01110111 01101110;
б) 01001001 01000010 01001101;
в) 01000101 01101110 01110100 01100101 01110010

Решение:

1. Переведите коды из двоичной системы счисления в десятичную.
а) 01010101 01110000 00100000 00100110 00100000 01000100 1101111 01110111 01101110 → 85 112 32 38 32 68 111 119 110
б) 01001001 01000010 01001101 → 73 66 77
в) 01000101 01101110 01110100 01100101 01110010 → 69 110 116 101 114

2. Запустите текстовый редактор Блокнот.

3. Включить клавишу NumLock. Удерживая клавишу Alt, набрать код символа на цифровой клавиатуре. Отпустить клавишу Alt, на экране появится соответствующая буква.

а) 85 112 32 26 32 68 111 119 110 → Up&Down; б) 73 66 77 → IBM; в) 69 110 116 101 114 → Enter

Ответ: Up&Down; IBM; Enter

№2. Декодируйте следующие тексты, заданные десятичным кодом:

а) 087 111 114 100; б) 068 079 083; в) 080 097 105 110 116 098 114 117 115 104.

Решение:

Запустите текстовый редактор Блокнот. Включить клавишу NumLock. Удерживая клавишу Alt, набрать код символа на цифровой клавиатуре. Отпустить клавишу Alt, на экране появится соответствующая буква.

а) 087 111 114 100 → Word; б) 068 079 083 → DOS; в) 080 097 105 110 116 098 114 117 115 104 → Paintbrush.

Ответ: Word; DOS; Paintbrush.

Контрольные вопросы и задания:

1. Как кодируется текстовая информация?

2. Где можно найти коды символов?

3. Почему существует несколько таблиц кодов? Чем они отличаются друг от друга?

4. Заполните таблицу:

5. Какие последовательности букв будут записаны в кодировках Windows СР1251 и КОИ-8 и соответствовать слову «СИМВОЛ», записанному в кодировке ASCII.

Добавить комментарий

Закрыть меню