Лекция: Кодирование символьных (текстовых и числовых) данных
С помощью двоичного кода кодируется символьная, т. е. текстовая и числовая информация, для чего используются специальные кодировочные таблицы.
Для латинской раскладки клавиатуры применяется единая кодировочная таблица во всех странах, поэтому текст, набранный с использованием латинской раскладки, будет адекватно отображаться на любом компьютере.
Эта кодировочная носит название ASCII.
Код ASCII — American Standard Code for Information Interchange — (стандартный код информационного обмена США (произносится как «эски»), разработан ANSI — American National Standard Institute).
Он имеет базовую и расширенную таблицы кодирования:
— базовая — от 0 до 127;
— расширенная — от 128 до 255,
т. е. всего — 256или 28 значений.
Таким образом, в этой кодировочной таблице использовано восемь бит или 1 байт.
Первые 32 значения (от 0 до 31) отданы для кодирования символов аппаратных средств (компьютеров и принтеров).
Значения от 32 до 127 — коды символов английского алфавита, знаки препинания, цифр, арифметических действий и некоторых вспомогательных символов.
В России расширенная символьная кодировка (от 128 до 255-го значения), включающая коды кириллицы, имеет три действующих стандарта:
— Windows 1251 — стандарт в российском секторе Word Wide Web;
— КОИ-8 (восьмизначный код обмена информацией) — стандарт в сообщениях электронной почты и телеконференций;
— международный стандарт ISO (International Standard Organization — международный институт стандартизации), который на практике используется редко.
Однако, используя 8-битную кодировочную таблицу невозможно адекватно увидеть на мониторе документы, созданные на тех языках, где используются символы, отличающиеся от латинских и кирилличных, например, умляуты в немецком языке или иероглифы.
Универсальная система кодирования текстовых данных основана не на 8-, а на 16-разрядном (или 2-х байтном) кодировании называется Юникод (UNICODE). На основании такой таблицы может быть закодировано N=216=65 536 символов.
Она позволяет кодировать не только русский и латинский алфавиты, но практически все современные письменности, в том числе: китайскую, корейскую, японскую, арабскую, иврит, армянскую, бенгальскую и т. п.).
Однако при этом все текстовые документы автоматически имеют вдвое больший объем.
Поэтому сейчас на практике больше распространено представление Юникода UTF-8 (Unicode Transformation Format).
Кодировка в UTF-8 обеспечивает наилучшую совместимость с системами, использующими 8-битные символы.
Текст, состоящий только из символов с номером меньше 128-го при записи в UTF-8 превращается в обычную кодировку ASCII или Windows 1251.
Русифицированная часть стандарта Windows 1251представлена в следующей таблице:
| О120 | О121 | О122 | О123 | О124 | О125 | О126 | О127 | О128 | О129 |
| Ђ | Ѓ | ||||||||
| О130 | О131 | О132 | О133 | О134 | О135 | О136 | О137 | О138 | О139 |
| ‚ | ѓ | „ | … | † | ‡ | € | ‰ | Љ | ‹ |
| О140 | О141 | О142 | О143 | О144 | О145 | О146 | О147 | О148 | О149 |
| Њ | Ќ | Ћ | Џ | ђ | ‘ | ’ | “ | ” | • |
| О150 | О151 | О152 | О153 | О154 | О155 | О156 | О157 | О158 | О159 |
| – | — | ? | ™ | љ | › | њ | ќ | ћ | џ |
| О160 | О161 | О162 | О163 | О164 | О165 | О166 | О167 | О168 | О169 |
| Ў | ў | Ј | ¤ | Ґ | ¦ | § | Ё | © | |
| О170 | О171 | О172 | О173 | О174 | О175 | О176 | О177 | О178 | О179 |
| Є | « | | ® | Ї | ° | ± | І | і | |
| О180 | О181 | О182 | О183 | О184 | О185 | О186 | О187 | О188 | О189 |
| ґ | µ | ¶ | · | ё | № | є | » | ј | Ѕ |
| О190 | О191 | О192 | О193 | О194 | О195 | О196 | О197 | О198 | О199 |
| ѕ | ї | А | Б | В | Г | Д | Е | Ж | З |
| О200 | О201 | О202 | О203 | О204 | О205 | О206 | О207 | О208 | О209 |
| Р | Й | К | Л | М | Н | О | П | Р | С |
| О210 | О211 | О212 | О213 | О214 | О215 | О216 | О217 | О218 | О219 |
| Т | У | Ф | Х | Ц | Ч | Ш | Щ | Ъ | Ы |
| О220 | О221 | О222 | О223 | О224 | О225 | О226 | О227 | О228 | О229 |
| Ь | Э | Ю | Я | а | б | в | г | д | е |
| О230 | О231 | О232 | О233 | О234 | О235 | О236 | О237 | О238 | О239 |
| ж | з | и | й | к | л | м | н | о | п |
| О240 | О241 | О242 | О243 | О244 | О245 | О246 | О247 | О248 | О249 |
| р | с | т | у | ф | х | ц | ч | ш | щ |
| О250 | О251 | О252 | О253 | О254 | О255 | О256 | О257 | О258 | О259 |
| ъ | ы | ь | э | ю | я |