Компьютер и текст
В
информатике текстом считают последовательность любых символов. Сейчас
компьютеры в основном пользуются алфавитами, содержащими 256 знаков1. Каждому
из символов соответствует свой восьмиразрядный двоичный код. Таким образом
любой символ текста, включая пробелы, занимает 8 бит (1 байт) в памяти
компьютера. Зная это, можно легко оценить объем памяти, необходимый для
хранения того или иного текстового документа.
Вспомним,
как связано количество бит в коде с тем, сколько требуется различных кодов.
Один
бит (двоичная цифра) может принимать два значения, добавление каждого разряда в
код удваивает количество получаемых комбинаций: двухбитовый код -- четыре
варианта, трехбитовый -- восемь, четырехбитовый -- шестнадцать и т. д.
Рассмотрим
пример. Машинописная страница стандартного формата (А4) содержит около 55
строк. На каждой строке помещается в среднем 60 символов2. Подсчитаем
количество текстовой информации на такой странице. Каждый символ -- 1 байт информации,
а всего символов -- 60*55=3300. Значит, на странице 3300 байт (около 3 Кбайт).
Как связаны двоичные коды и соответствующие им символы? Это определяется
таблицей кодировки. Все используемые на персональных компьютерах таблицы3
основаны на американском стандарте ASCII4. Он определяет первые 128 кодов: для
латинских букв, цифр, основных знаков препинания и математических операций.
Остальные 128 кодов используются для специальных символов и букв национальных
алфавитов (в том числе, русского). И, поскольку общепринятого стандарта для
этого не было, возникло много различных кодировок, в том числе, несколько --
для кириллицы5. Именно поэтому, получив от кого-нибудь текст и попытавшись
прочесть его на своем компьютере, мы зачастую видим на экране набор непонятных
"закорючек".
код
CP866
CP1251
KOI-8R
Mac
01011010
Z
Z
Z
Z
10001111
П
П
11111101
$
э
Щ
э
В
такой ситуации на помощь приходят программы-конверторы6. Они заменяют двоичный
код каждого символа на код, которым такой символ представляется в другой
кодировке. Это соответствие определяется таблицей перекодировки. Обычно
пользователь должен указать, из какой кодировки в какую идет преобразование,
однако появились и программы, умеющие автоматически определять кодировку
исходного текста.
Стремление
упростить работу с различными текстами (сперва текстами программ, затем
служебными документами, газетами, журналами, книгами и т.д.) привело к созданию
множества программ, специально ориентированных на это -- текстовых редакторов
(или текстовых процессоров).
Какими
же данными оперируют эти программы? Очевидно, что наименьшим объектом будет
символ. Однако можно работать не только с отдельными символами, но и со
словами, строками, абзацами, произвольными фрагментами и текстом в целом.
Некоторые действия можно выполнить с любой из этих структур, другие -- только с
какй-то определенной. Обрабатываемый текст представляется как бы в виде рулона
"бумаги", который можно прокручивать на экране вперед и назад.
Большинство современных программ позволяет одновременно работать с несколькими
текстами, каждый из которых выводится в отдельное окно. Кроме основных
"листов" текстовый процессор, как и другие программы использует
"конверт" (или "карман"), в котором можно временно хранить
фрагмент текста при его копировании или перемещении.
Текстовый
процессор -- не просто заменитель пишущей машинки, а универсальное средство для
работы с текстами. Он предоставляет очень широкие возможности манипулирования
текстовыми документами. Кроме таких очевидных операций как набор текста,
удаление, копирование и перемещение его фрагментов, а также сохранение на диск
и печать, имеется возможность изменять шрифт, его начертание, цвет и размер.
Текстовый процессор может автоматически форматировать текст (включая установку
абзацного отступа и выравнивание). Можно сразу во всем тексте заменить одно
заданное слово на другое. Например, поменять "ЭВМ" на
"компьютер". Многие редакторы умеют проверять орфографию: компьютер
ищет каждое слово в своем словаре и, если не находит, сообщает об этом
пользователю, предлагая возможные варианты исправления.
Примечания
Новый
стандарт Unicode, на который осуществляется постепенный переход, позволяет
использовать 216=65536 (а в последней версии -- 232) символов. Текст в такой
кодировке будет занимать существенно (в среднем -- вдвое) больше памяти.
[Примечание к примечанию: реальные системы используют не непосредственно
Unicode (UTF-32), а представления UTF-8 и UTF-16. В первом из них символ может
занимать от 1 до 6 байт, во втором -- 2 или 4 байта]
Это
-- примерные значения для русской пишущей машинки. В англоязычных странах
обычно используют более мелкий шрифт.
Речь
идет о "стандартных" шрифтах. Кроме них существуют также шрифты,
содержащие (вместо букв и цифр) специальные, например декоративные, символы.
American Standard Code for
Information Interchange -- Американский стандартный код обмена информацией.
В
России широко используются в настоящее время четыре кодировки:
CP866
("DOS-альтернативная". Для PC-совместимых компьютеров под MS-DOS и
OS/2, а также в любительской компьютерной сети Fido);
CP1251
(Для PC-совместимых компьютеров под Windows, а также на большинстве сайтов
WWW);
KOI-8R
(Компьютеры под UNIX, электронная почта и конференции Internet);
Mac-Cyrillic
(Макинтош-совместимые компьютеры).
Converter
(англ.) -- преобразователь.
Список литературы
Для
подготовки данной работы были использованы материалы с сайта
http://macedu.narod.ru