- •Тема1. Информация и информационные технологии.
- •1.Понятие информатики, история развития информатики, место информатики в ряду других фундаментальных наук.
- •2.Основные объекты и методы изучения науки информатики.
- •3.Мировоззренческие экономические и правовые аспекты информационных технологий.
- •4.Понятие информации. Формы представления информации.
- •5.Измерение и представление информации. Меры информации и их классификация (синтаксическая, семантическая, прагматическая).
- •6.Носители информации. Виды и свойства информации.
- •7.Общая характеристика информационных процессов
- •8.Информационные технологии и ресурсы
- •9.Информационные системы
- •10.Информатизация общества и автоматизация офиса.
- •11.Понятие данных. Носители данных. Операции с данными.
- •12.Кодирование данных двоичным кодом. Кодирование целых и действительных чисел.
- •13.Кодирование текстовых данных.
- •14.Кодирование графических данных.
- •15.Системы счисления. Перевод целых и дробных чисел из одной системы счисления в другую.
- •16.Основные структуры данных.
13.Кодирование текстовых данных.
Под текстом понимается последовательность знаков, входящих в некоторое множество (алфавит) и обладающих в этом множестве определенным смыслом, т.е. каждый знак рассматривается в таком контексте как символ.
Если первоначально компьютеры были предназначены для проведения всевозможных расчетов ("вычислительные машины"), т.е. выполнения операций над числами, то в настоящее время значительная доля компьютерных ресурсов тратится именно на ввод, хранение, передачу и обработку текстов.
Какие же операции можно производить над текстом, ли он уже находится в памяти компьютера? Прежде всего, поиск заданной последовательности символов и замена на другую последовательность символов, упорядочивание символов (заметим, что добавление, замена, удаление, копирование и тому подобные операции относятся в равной мере к обработке данных всех типов). И поиск, и упорядочивание сводятся к выполнению операции сравнения символов. При сравнении символов наиболее важными аспектами являются уникальность кода для каждого символа и длина этого кода, а сам выбор принципа кодирования в настоящее время практически не имеет значения. Поэтому можно использовать различные таблицы кодировки, лишь бы при кодировании и декодировании символов использовалась одна и та же таблица.
В вычислительных машинах для представления информации используются цепочки байтов. Поэтому для перевода информации из машинного представления в человеческий необходимы таблицы кодировки символов – таблицы соответствия между символами определенного языка и кодами символов. Их еще называют таблицами кодировки, кодовыми страницами или применяют английский термин character set (который иногда сокращают до charset).
Если каждому символу алфавита сопоставить определенное целое число (например, порядковый номер), то с помощью двоичного кода можно кодировать и текстовую информацию. Восьми двоичных разрядов достаточно для кодирования 256 различных символов. Этого хватит, чтобы выразить различными комбинациями восьми битов все символы английского и русского языков, как строчные, так и прописные, а также знаки препинания, символы основных арифметических действий и некоторые общепринятые специальные символы, например символ «§».
Технически это выглядит очень просто, однако всегда существовали достаточно веские организационные сложности. В первые годы развития вычислительной техники они были связаны с отсутствием необходимых стандартов, а в настоящее время вызваны, наоборот, изобилием одновременно действующих и противоречивых стандартов. Для того чтобы весь мир одинаково кодировал текстовые данные, нужны единые таблицы кодирования, а это пока невозможно из-за противоречий между символами национальных алфавитов, а также противоречий корпоративного характера.
Для английского языка, захватившего де-факто нишу международного средства общения, противоречия уже сняты. Институт стандартизации США (ANSI— American National Standard Institute) ввел в действие систему кодирования ANCII (American Standard Code for Information Interchange — стандартный код информационного обмена США). В системе ANCII закреплены две таблицы кодирования — базовая и расширенная. Базовая таблица закрепляет значения кодов от 0 до 127, а расширенная относится к символам с номерами от 128 до 255.
Первые 32 кода базовой таблицы, начиная с нулевого, отданы производителям аппаратных средств (в первую очередь производителям компьютеров и печатающих устройств). В этой области размещаются так называемые управляющие коды, которым не соответствуют никакие символы языков, и, соответственно, эти коды не выводятся ни на экран, ни на устройства печати, но ими можно управлять тем, как производится вывод прочих данных.
Начиная с кода 32 по код 127 размещены коды символов английского алфавита, знаков препинания, цифр, арифметических действий и некоторых вспомогательных символов. Базовая таблица кодировки ANCII Приведена в таблице 1.
Таблица 1. Базовая таблица кодировки ANCII
32 пробел |
48 |
0 |
64 |
@ |
80 |
Р |
96 |
|
112 |
Р |
33 ! |
49 |
1 |
65 |
А |
81 |
О |
97 |
а |
113 |
|
34 |
50 |
2 |
66 |
В |
82 |
Я |
98 |
Ь |
114 |
г |
35 # |
51 |
3 |
67 |
С |
83 |
5 |
99 |
с |
115 |
3 |
36 $ |
52 |
4 |
68 |
|
84 |
т |
100 |
а1 |
116 |
1 |
37 % |
53 |
5 |
69 |
Е |
85 |
II |
101 |
е |
117 |
и |
38 & |
54 |
6 |
70 |
Р |
86 |
V |
102 |
т |
118 |
V |
39 |
55 |
7 |
71 |
е |
87 |
\Л/ |
103 |
д |
119 |
\л/ |
40 ( |
56 |
8 |
72 |
н |
88 |
X |
104 |
п |
120 |
X |
41 ) |
57 |
9 |
73 |
I |
89 |
V |
105 |
|
121 |
У |
42 |
58 |
|
74 |
^ |
90 |
2 |
106 |
\ |
122 |
2 |
43 + |
59 |
; |
75 |
к |
91 |
[ |
107 |
к |
123 |
{ |
44 |
60 |
< |
70 |
I |
92 |
\ |
108 |
1 |
124 |
| |
4!) |
61 |
|
77 |
м |
93 |
1 |
109 |
П1 |
12!) |
} |
40 |
62 |
> |
/II |
N |
94 |
|
1 10 |
П |
1?0 |
|
4/ / |
63 |
|
/II |
|
9!) |
|
1 1 1 |
О |
\71 |
|
Аналогичные системы кодирования текстовых данных были разработаны и в других стропах. Так, например, в СССР в этой области действовала система кодирования КОИ-7 (код обмена информацией, семизначный). Однако поддержка производителей оборудования и программ вывела американский код ANCII на уровень международного стандарта, и национальным системам кодирования пришлось «отступить» во вторую, расширенную часть системы кодирования, определяющую значения кодов со 128 по 255. Отсутствие единого стандарта в этой области привело к множественности одновременно действующих кодировок. Только в России можно указать три действующих стандарта кодировки и еще два устаревших.
Так, например, кодировка символов русского языка, известная как кодировка Windows-1251, была введена «извне» — компанией Microsoft, но, учитывая широкое распространение операционных систем и других продуктов этой компании в России, она глубоко закрепилась и нашла широкое распространение (таблица 2). Эта кодировка используется на большинстве локальных компьютеров, работающих на платформе Windows.
Таблица 2. Кодировка Windows-1251
-
128
Ъ
144
Г)
160
176
192
А
208
Р
224
а
240
Р
129
Г
145
161
У
177
+
193
Б
209
С
225
б
241
с
130
146
162
У
178
I
194
В
210
Т
226
в
242
т
131
Г
147
163
179
I
195
Г
211
У
227
г
243
У
1 'Л2
п
148
164
п
180
г
196
Д
212
ф
228
д
244
Ф
133
149
165
г
181
Ц
197
Е
213
X
229
е
245
X
УМ
Т
150
-
166
I I
182
11
198
Ж
214
ц
230
ж
246
ц
13!)
151
—
167
§
183
199
3
215
ч
231
3
247
ч
13в
152
168
Ё
184
ё
200
И
216
ш
232
и
248
ш
13/
%0
153
ТМ
169
©
185
№
201
Й
217
щ
233
й
249
щ
130
/ь
154
1Ъ
170
е
186
е
202
К
218
ъ
234
к
250
ъ
139
<
155
>
171
«
187
»
203
Л
219
ы
235
л
251
ы
140
Нэ
156
Нэ
172
188
]
204
М
220
ь
236
м
252
ь
141
к
157
К
173
-
189
5
205
Н
221
э
237
н
253
э
142
ъ
158
Г)
174
®
190
5
206
О
222
ю
238
о
254
ю
143
и
159
М
175
I
191
У
207
п
223
я
239
п
255
я
Другая распространенная кодировка носит название КОИ-8 (код обмена информацией, восьмизначный) — ее происхождение относится ко временам действия Совета экономической Взаимопомощи государств Восточной Европы (таблица 3). Сегодня кодировка КОИ-8 имеет широкое распространение в компьютерных сетях на территории России и в российском секторе Интернета.
Международный стандарт, в котором предусмотрена кодировка символов русского алфавита, носит название кодировки ISO (International Standard Organization — Международный институт стандартизации). На практике данная кодировка используется редко (таблица 4).
На компьютерах, работающих и операционных системах MS-DOS, могут действовать еще две кодировки (кодировка ГОСТ и кодировка ГОСТ-альтернативная). Первая из них считалась устаревшей даже в первые годы появления персональной вычислительной техники, но вторая используется и по сей день (см. таблицу 5).
Таблица 3. Кодировка КОИ-8
|
|
|
|
|
|
|
|
|
|
|
|
||||
'!) |
|
144 !!! |
160 |
— |
|
176 |
Н |
192 |
ю |
208 |
п |
224 |
Ю |
240 |
II |
:■') |
I |
145 1 |
161 |
Ё |
|
177 |
I- |
193 |
а |
209 |
я |
225 |
А |
241 |
Я |
30 |
I |
146 1 |
162 |
г |
|
178 |
н |
194 |
б |
210 |
Р |
226 |
Б |
242 |
1' |
31 |
I |
147 г |
163 |
ё |
|
179 |
Ё |
195 |
ц |
211 |
с |
227 |
Ц |
243 |
С |
3? |
I |
148 ■ |
164 |
г |
|
180 |
|
196 |
д |
212 |
т |
228 |
Д |
244 |
1 |
33 |
I |
149 • |
165 |
г |
|
181 |
н |
197 |
е |
213 |
У |
229 |
Е |
245 |
У |
34 |
I |
150 л[ |
166 |
1 |
|
182 |
т |
198 |
Ф |
214 |
ж |
230 |
Ф |
246 |
Ж |
з:> |
I |
151 » |
167 |
-, |
|
183 |
т |
199 |
г |
215 |
в |
231 |
Г |
247 |
и |
36 |
•г |
152 < |
168 |
-| |
|
184 |
т |
200 |
X |
216 |
ь |
232 |
X |
248 |
1, |
3/ |
X- |
153 > |
169 |
1- |
|
185 |
± |
201 |
и |
217 |
ы |
233 |
и |
249 |
ы |
38 |
\ |
154 |
170 |
I- |
|
186 |
л. |
202 |
й |
218 |
3 |
234 |
й |
250 |
;| |
ЗУ |
т |
155 ^ |
171 |
1 |
|
187 |
X |
203 |
к |
219 |
ш |
235 |
к |
251 |
III |
40 |
а |
156 * |
172 |
|
|
188 |
-[. |
204 |
л |
220 |
э |
236 |
л |
252 |
0 |
4 I |
■ |
157 2 |
173 |
|
|
189 |
-|- |
205 |
м |
221 |
щ |
237 |
м |
253 |
Щ |
Л',' |
|
158 ■ |
174 |
^ |
|
190 |
■}• |
206 |
н |
222 |
ч |
238 |
н |
254 |
Ч |
ИЗ |
1 |
159 * |
175 |
1- |
|
191 |
ё |
207 |
О |
223 |
ъ |
239 |
О |
255 |
Ь |
Таблица 4. Кодировка ISO
|
|
160 |
|
176 |
А |
192 |
Р |
208 |
а |
224 |
Р |
240 |
№ |
|
|
161 |
Ё |
177 |
Б |
193 |
С |
209 |
б |
225 |
с |
241 |
ё |
|
|
162 |
Ъ |
178 |
В |
194 |
т |
210 |
в |
226 |
т |
242 |
Г) |
|
|
163 |
Г |
179 |
Г |
195 |
У |
211 |
г |
227 |
У |
243 |
< |
|
|
164 |
е |
180 |
Д |
196 |
ф |
212 |
Д |
228 |
Ф |
244 |
|
|
|
165 |
3 |
181 |
Е |
197 |
X |
213 |
е |
229 |
X |
245 |
|
|
|
166 |
I |
182 |
Ж |
198 |
ц |
214 |
ж |
230 |
Ц |
246 |
I |
В150 не определены |
167 |
т |
183 |
3 |
199 |
ч |
215 |
3 |
231 |
ч |
247 |
I |
|
|
|
168 |
3 |
184 |
И |
200 |
ш |
216 |
и |
232 |
ш |
248 |
I |
|
|
169 |
Лэ |
185 |
Й |
201 |
щ |
217 |
й |
233 |
щ |
249 |
1Ь |
|
|
170 |
нь |
186 |
К |
202 |
ъ |
218 |
к |
234 |
ъ |
250 |
п. |
|
|
171 |
т. |
187 |
Л |
203 |
ы |
219 |
л |
235 |
ы |
251 |
11 |
|
|
172 |
к |
188 |
М |
204 |
ь |
220 |
м |
236 |
ь |
252 |
К |
|
|
173 |
- |
189 |
н |
205 |
э |
221 |
н |
237 |
э |
253 |
§ |
|
|
174 |
У |
190 |
о |
206 |
ю |
222 |
о |
238 |
ю |
254 |
У |
|
|
175 |
м |
191 |
п |
207 |
я |
223 |
п |
239 |
я |
255 |
1,1 |
Таблица 5 ГОСТ-альтернативая кодировка
128 |
А |
144 |
Р |
160 |
а |
176 |
|
192 |
|
208 |
X |
224 |
р |
240 |
129 |
Б |
145 |
С |
161 |
б |
177 |
ш |
193 |
Г |
209 |
т |
225 |
с |
241 |
130 |
в |
146 |
Т |
162 |
в |
178 |
1 |
194 |
т |
210 |
т |
226 |
т |
242 |
131 |
г |
147 |
У |
163 |
г |
179 |
1 |
195 |
\- |
211 |
|_ |
227 |
У |
243 |
132 |
д |
148 |
Ф |
164 |
Д |
180 |
Н |
196 |
|
212 |
|
228 |
Ф |
244 |
133 |
Е |
149 |
X |
165 |
е |
181 |
н |
197 |
+ |
213 |
Г |
229 |
X |
245 |
134 |
ж |
150 |
Ц |
166 |
ж |
182 |
■1 |
198 |
|
214 |
Г |
230 |
ц |
24(3 |
135 |
3 |
151 |
Ч |
167 |
3 |
183 |
1 |
199 |
1- |
215 |
+ |
231 |
ч |
247 |
130 |
и |
152 |
ш |
168 |
и |
184 |
1 |
200 |
1 |
216 |
+ |
232 |
ш |
248 |
13/ |
и |
153 |
Щ |
169 |
й |
185 |
н |
201 |
Г |
217 |
^ |
233 |
и; |
240 |
13И |
к |
154 |
ъ |
170 |
к |
186 |
1 |
202 |
|
218 |
г |
234 |
ь |
:>!>() |
13!) |
л |
155 |
ы |
171 |
л |
1Н/ |
1 |
203 |
т |
219 |
■ |
235 |
ы |
:"■ 1 |
МО |
м |
156 |
ь |
172 |
м |
ШН |
Л |
204 |
1- |
220 |
|
?36 |
1. |
:">; |
М1 |
II |
157 |
э |
173 |
II |
III!) |
1 |
205 |
|
221 |
Г |
■::и |
;) |
|
и:> |
о |
!Г>8 |
га |
1/4 |
и |
|'К1 |
1 |
206 |
+ |
??? |
1 |
::\\\ |
К) |
•.■■и |
мз |
II |
159 |
я |
1 /5 |
|
1'Н |
] |
207 |
|
|
■1 |
:ч!) |
я |
|
В связи с изобилием систем кодирования текстовых данных, действующих в России, возникает задача межсистемного преобразования данных — это одна из распространенных задач информатики.
Универсальная система кодирования текстовых данных
Если проанализировать организационные трудности, связанные с созданием единой системы кодирования текстовых данных, то можно прийти к выводу, что они вызваны ограниченным набором кодов (256). В то же время очевидно, что если, например, кодировать символы не восьмиразрядными двоичными числами, а числами с большим количеством разрядов, то и диапазон возможных значений кодов станет намного больше. Такая система, основанная на 16-разрядном кодировании символов, получила название универсальной — UNICODE. Шестнадцать разрядов позволяют обеспечить уникальные коды для 65536 различных символов — этого поля достаточно для размещения в одной таблице символов большинства языков планеты.
Несмотря на тривиальную очевидность такого подхода, простой механический переход на данную систему долгое время сдерживался из-за недостаточных ресурсов средств вычислительной техники (в системе кодирования UNICODE все текстовые документы автоматически становятся вдвое длиннее). Во второй половине 90-х годов технические средства достигли необходимого уровня обеспеченности ресурсами, и сегодня мы наблюдаем постепенный перевод документов и программных средств на универсальную систему кодирования. Для индивидуальных пользователей это еще больше добавило забот по согласованию документов, выполненных в разных системах кодирования, с программными средствами, но это надо понимать как трудности переходного периода.