Русские кодировки
Россия, впрочем, как и всегда, пошла впереди планеты всей. У нас ведь всегда брали не качеством, а количеством. Итак, было создано несколько кодировок символов русского языка. А в большинстве стран была создана единая кодовая страница для своего алфавита, чтобы избежать путаницы.
С самого начала программное обеспечение, поставляемое в Россию из-за рубежа, не умело работать с русскими символами. То есть вместо того, чтобы написать "Привет Вася" приходилось "Privet Vasya". Итак, чтобы решить эту проблему была создана русская кодовая страница, получившая название ISO-8859-5. Как следует из вышесказанного, после 127 кода следовали русские буквы — всего 66 (33 прописных и 33 строчных). Поэтому оставалось еще достаточно места для псевдографики, которая тогда использовалась крайне широко, ведь графических оболочек еще не существовало.
Примерно в это же время появилась еще одна кодовая страница — ср866. Она отличалась от ISO-8859-5 порядком следования русских букв до строчной "р", а символы псевдографики кодировались теми же кодами, что и в латинице. Соответственно, ее использование могло существенно упростить работу с нелокализованными версиями программ западных разработчиков, работающих с графикой. Например, для отображения таблицы. Поэтому, если в системе была установлена эта кодировка, графические объекты отражались верно. В противном случае, например, при установленной ISO-8859-5 рисовалась бы русская буква, вместо символа псевдографики, и такое изображение было бы неудобно просматривать.
Первой локализованной операционной системой стала MS-DOS 4.1 от корпорации Microsoft. При создании кодовой страницы была взята альтернативная ISO-8859-5 кодировка, впоследствии названная ср866. И так как все большее и большее распространение получали персональные компьютеры, кодировка ср866 стала самой популярной.
Дальше был Windows. И появилась еще одна кодировка Win-1251. Зачем? Отпала необходимость использования псевдографики. Поэтому вместо нее были встроены специальные символы: @, *, &,^ и т. д. Но возникла новая проблема. Текст, набранный в кодировке ср866, уже нельзя было прочитать. Поэтому появились программы-перекодировщики.
На персональных компьютерах повсеместно была установлена операционная система MS-DOS с кодовой страницей 866. На сетевых операционных системах все было иначе. В те годы начала свое победоносное шествие UNIX. А в ней кодировкой по умолчанию стала КОИ-8.
Зарождение Интернета происходило в Америке. Соответственно все веб, почтовые серверы предназначались для англоязычных пользователей. Так как использование графики (псевдографики) в почтовых сообщениях тогда не требовалось, расчет делался на первую половину таблицы символов (от О до 127) — семибитную кодировку.
В связи с этим, сообщения, содержащие символы с кодами, большими 127, которые было невозможно закодировать семью битами, такими почтовыми серверами обрабатываться не могли. Итак, для того чтобы решить эту проблему, придумали приводить такие сообщения к семибитному виду. Сам процесс был достаточно прост — обнулялся первый бит, указывавший на половину их кодовой страницы. И вот что получалось при таком преобразовании: русская буква "е" превращалась в "Г и т. д.
Выход был — сделать так, чтобы все почтовые серверы поддерживали восьмибитную кодировку символов. Но, к сожалению, осуществить это не представлялось возможным. Можно, конечно, было писать письмо не русскими символами, а транслитом. Но такое письмо было бы неудобочитаемым. Поэтому была придумана новая кодировка символов, которая впоследствии получила название КОИ-8. Итак, в ней на места, соответствующие кодам символов, большим 127, были поставлены русские символы, похожие по звучанию, произношению, на английские буквы. Например, "а" "б" "ц" и т. д., которые при семибитном преобразовании перешли бы в латинские "а" "b" "с".
Эта кодировка стала стандартом для UNIX-подобных операционных систем (Linux и т. д.) и используется по сегодняшний день.
Естественно, что пользователь обыкновенного персонального компьютера не мог или не хотел устанавливать ОС UNIX. Поэтому были созданы специальные программы, умеющие работать с различными кодировками. В дальнейшем эта способность была встроена практически во все приложения, тем или иным образом, связанные с сетью.
Кодировка КОИ-8 стала наиболее рекомендованной для переписки, поэтому любая почтовая программа должна была уметь работать с ней. То есть правильно отображать текст, набранный в ней.
Сейчас наиболее распространенные кодировки русскоязычного текста в Интернете — это КОИ-8 и Win. КОИ-8 — кодировка, используемая преимущественно в UNIX-подобных операционных системах. Например; Linux. Win же используется в ОС под управлением Microsoft Windows. Вы можете спросить: "А мне то что?" А все дело в том, что некоторые серверы расположены на компьютерах под управлением Windows, а некоторые — под управлением UNIX-подобной операционной системы. Соответственно кодировка русскоязычных символов различна.
К счастью, Microsoft Internet Explorer 6.0 обладает возможностью отображать веб-страницы, сохраненные в любой кодировке. Начиная с 5-й версии, обозреватель сам распознает и отображает в правильной кодировке веб-сайты.
В контекстном меню браузера (рис. 7.7) вы можете выбрать кодировку двумя способами:
- вручную;
- автоматически
Рис. 7.7. Выбор кодировки