ВУЗ:
Составители:
Какие же операции можно производить над текстом, ли он уже находится в памяти компьюте-
ра? Прежде всего, поиск заданной последовательности символов и замена на другую последователь-
ность символов, упорядочивание символов (заметим, что добавление, замена, удаление, копирование и
тому подобные операции относятся в равной мере к обработке данных всех типов). И поиск, и упоря-
дочивание сводятся к выполнению операции сравнения символов. При сравнении символов наиболее
важными аспектами являются уникальность кода для каждого символа и длина этого кода, а сам вы-
бор принципа кодирования в настоящее время практически не имеет значения. Поэтому можно ис-
пользовать различные таблицы кодировки, лишь бы при кодировании и декодировании символов исполь-
зовалась одна и та же таблица.
В вычислительных машинах для представления информации используются цепочки байтов. По-
этому для перевода информации из машинного представления в человеческий необходимы таблицы ко-
дировки симво-
лов – таблицы соответствия между символами определенного языка и кодами символов. Их еще назы-
вают таблицами кодировки, кодовыми страницами или применяют английский термин character set
(который иногда сокращают до charset).
Самой известной таблицей кодировки является код ASCII (Американский стандартный код для
обмена информацией). Первоначально он был разработан для передачи текстов по телеграфу, причем
в то время он был 7-битовым, т.е. для кодирования символов английского языка, служебных и управ-
ляющих символов использовались только 128 7-битовых комбинаций. При этом первые 32 комбинации
(кода) служили для кодирования управляющих сигналов (начало текста, конец строки, перевод карет-
ки, звонок, конец текста и т.д.). При разработке первых компьютеров фирмы IBM этот код был ис-
пользован для представления символов в компьютере. Поскольку в исходном коде ASCII было всего 128
символов, для их кодирования хватило значений байта, у которых 8-ой бит равен 0. Значения байта с
8-ым битом, равным 1, стали использовать для представления символов псевдографики, математиче-
ских знаков и некоторых символов из языков, отличных от английского (греческого, немецких умляутов,
французских диакритических знаков и т.п.).
Когда стали приспосабливать компьютеры для других стран и языков, места для новых символов
уже не стало хватать. Для того, чтобы полноценно поддерживать помимо английского и другие язы-
ки, фирма IBM ввела в употребление несколько кодовых таблиц, ориентированных на конкретные
страны. Так для скандинавских стран была предложена таблица 865 (Nordic), для арабских стран –
таблица 864 (Arabic), для Израиля – таблица 862 (Israel) и так далее. В этих таблицах часть кодов из
второй половины кодовой таблицы использовалась для представления символов национальных алфави-
тов (за счет исключения некоторых символов псевдографики).
С русским языком ситуация развивалась особым образом. Очевидно, что замену символов во вто-
рой половине кодовой таблицы можно произвести разными способами. Вот и появились для русского
языка несколько разных таблиц кодировки символов кириллицы: KOI8-R, IBM-866,
CP-1251, ISO-8551-5. Все они одинаково изображают символы первой половины таблицы (от 0 до 127)
и различаются представлением символов русского алфавита и псевдографики.
Что касается длины кода, то она по возможности должна быть минимальной и в то же время доста-
точной для кодирования всех символов, которые могут потребоваться при вводе текстов любой сложно-
сти.
ЭВМ первых поколений в силу ограниченности оперативной памяти и невысокого по современным
меркам быстродействия процессоров использовали минимальный набор символов. Рост мощности
компьютерных устройств привел к тому, что в настоящее время при работе с одним ПК можно ис-
пользовать несколько разных таблиц перекодировки. По сути, многие современные программные сред-
ства, будь то текстовые процессоры или программы для работы в Internet, предоставляют пользова-
телю возможность выбора, какую из таблиц перекодировки использовать в своей работе, автомати-
чески проводя преобразования существующего текстового файла из одного способа кодирования в дру-
гой по команде пользователя. Соответствующие программные модули называют конверторами.
Сейчас, когда объем памяти компьютеров чрезвычайно вырос, уже нет нужды сильно экономить
при кодировании текста. Можно позволить себе "роскошь" тратить для хранения текста вдвое
больше памяти (выделяя для каждого символа не 1, а 2 байта). При этом появляется возможность
Страницы
- « первая
- ‹ предыдущая
- …
- 34
- 35
- 36
- 37
- 38
- …
- следующая ›
- последняя »
