Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
Lektsii_PO_KS.docx
Скачиваний:
24
Добавлен:
21.08.2019
Размер:
645.14 Кб
Скачать
  1. Кодировка сообщений. Типы кодировок. Проблемы русификации

Файл, содержащий гипертекстовый WWW-документ, представляет собой текстовый файл. "Внутри" компьютера современной архитектуры и при передаче по сетям каждый символ текста представляется в виде целого числа, которое, в свою очередь, кодируется комбинацией из восьми двоичных разрядов, называемых битами (bit). Такая комбинация из восьми бит, обрабатываемых ЭВМ как одно целое, получила название байт (byte). Каждый бит в байте может иметь ровно два состояния: "включен" и "выключен", или "1" и "0". Легко убедиться, что существует ровно 256 комбинаций из восьми бит, каждый из которых может быть занят либо нулем, либо единицей. Таким образом получается, что восемью битами (то есть, одним байтом) могут быть представлены числа, или коды, от 0 до 255 (то есть, от 00000000 до 11111111 в двоичной системе счисления). Каждому коду можно поставить в соответствие определенный текстовый символ, например, букву или цифру, или управляющий символ, такой как возврат каретки, переход на новую строку и т. п. Так4им образом, однобайтовые таблицы кодировки могут закодировать 256 символов. Для единообразия отображения текста на разных ПК появился стандарт кодирования текстовых данных.

Институт стандартизации США (ANSI - American National Standard Institute) ввел в действие систему кодирования ASCII (American Standard Code for Information Interchange - стандартный код информационного обмена США 1963 г.). В системе ASCII закреплены две таблицы кодирования - базовая и расширенная. Первые 32 кода базовой таблицы, начиная с нулевого, отданы производителям аппаратных средств (в первую очередь производителям компьютеров и печатающих устройств). В этой области размещаются так называемые управляющие коды, которым не соответствуют никакие символы языков, и, соответственно, эти коды не выводятся ни на экран, ни на устройства печати, но ими можно управлять тем, как производится вывод прочих данных.

Начиная с кода 32 по код 127 размещены коды цифр, буквы латинского алфавита, знаки препинания и некоторые другие символы. Во вторые 128 мест кодовой таблицы,

исходно были помещены символы из алфавитов западноевропейских языков. Однако в разных операционных системах была принята разная расстановка кириллических символов внутри таблицы.

Кодовые таблицы для кодировки букв русского алфавита (кириллицы)

Существует довольно много различных кодовых таблиц, совпадающих в диапазоне кодов от 0 до 127 со стандартом ASCII и использующих диапазон кодов от 128 до 255 для специальных символов и букв русского алфавита.

КОИ-8. Код обмена информацией, восьмизначный. Ее происхождение относится ко временам действия Совета Экономической Взаимопомощи государств Восточной Европы. Сегодня кодировка КОИ-8 имеет широкое распространение в компьютерных сетях на территории России и в российском секторе Интернета. Базируется на государственном стандарте Кода Обмена Информацией КОИ8 (ГОСТ 19768-74). Применяется в основном на компьютерах с операционной системой UNIX. Принята за стандарт кодирования русскоязычных текстов при обмене по электронной почте. Большинство WWW-серверов хранят русскоязычные документы в этой кодировке. В настоящее время имеются наборы шрифтов для Microsoft Windows в кодировке KOI8-r. Они были разработаны специально для сетевых программ, работающих под Windows.

Windows-1251, Microsoft Windows Cyrillic code page 1251. Известна также как CP-1251 или Windows-1251. Наиболее широко применяется в "русифицированных" системах семейства Microsoft Windows. Кодировка символов русского языка, известная как кодировка Windows-1251, была введена "извне" - компанией Microsoft, но, учитывая широкое распространение операционных систем и других продуктов этой компании в России, она глубоко закрепилась и нашла широкое распространение. Эта кодировка используется на большинстве локальных компьютеров, работающих на платформе Windows.

ISO. Международный стандарт, в котором предусмотрена кодировка символов русского алфавита, носит название кодировки ISO (International Standard Organization - Международный институт стандартизации). На практике данная кодировка используется редко. ISO-8859-5. Расположение русских букв в ней практически совпадает с так называемой "основной кодировкой ГОСТа" (иногда можно встретить ее обозначение как Main-GOST). Применяется редко, хотя и является международным стандартом кодировки русского алфавита, зарегистрированным International Standards Organization (ISO).

CP-866 Microsoft/IBM code page 866. Известна также как "альтернативная кодировка ГОСТа" (в некоторых документах ее обозначают Alt-GOST или alt). Применяется в основном на персональных компьютерах IBM PC с операционной системой MS-DOS при работе в текстовом режиме. Программы просмотра под DOS практически не используются (обычно на IBM-совместимых машинах они работают под Microsoft Windows). Однако, мы упоминаем эту кодировку, поскольку текст WWW-документа можно создавать в текстовом редакторе, работающем под DOS.

Кириллица Macintosh (компьютеров фирмы Apple), она же CP10007, довольно близка к CP1251. Не зарегистрирована в IANA, но часто обозначается как x-mac-cyrillic (Mac Cyrillic).

Универсальная система кодирования текстовых данных

Если кодировать символы не восьмиразрядными двоичными числами, а числами с большим количеством разрядов, то и диапазон возможных значений кодов станет намного больше. Такая система, основанная на 16-разрядном кодировании символов, получила название универсальной - UNICODE. Шестнадцать разрядов позволяют обеспечить уникальные коды для 65 536 различных символов - этого поля достаточно для размещения в одной таблице символов большинства языков планеты. Однако, простой механический переход на данную систему долгое время сдерживался из -за недостаточных ресурсов средств вычислительной техники (в системе кодирования UNICODE все текстовые документы автоматически становятся вдвое длиннее). Кодировка Unicode по замыслу ее разработчиков, входящих в так называемый консорциум Unicode (The Unicode Consortium), должна раз и навсегда решить проблему хранения в текстовых файлах символов любой из существующих на Земле систем письменности. К сожалению, пока еще Unicode используется весьма редко.

Наиболее распространенные проблемы с кодировкой

Так уж сложилось, что в компьютерном мире крутятся, как минимум, 5 основных кодировок текста (Windows-1251, DOS, ISO, Koi8-R, Koi8-U, MAC и т.д.).

  1. Неправильное отображение web-страниц.

Исправить можно, изменив вид кодировки (Вид-Вид кодировки) или правой кнопкой в контекстном меню.

  1. Неправильное отображение при просмотре электронной почты. Исправить при помощи настроек почтовой программы или используя специальные программы - перекодировщики.

  2. При открытии текстового файла под dos в windows. Открыть такой файл можно, например, с помощью Internet Explorer, так как IE знает почти все кодировки или воспользуйтесь перекодировщиками.

  3. При копировании текста из одного приложения в другое. Эта проблема возникает из-за автоматического выбора, различными приложениями, таблиц кодировок текста по раскладке клавиатуры. Поэтому проверьте, чтобы в обоих приложениях была включена русская раскладка клавиатуры.

Согласование кодировок сервера и программы просмотра

Иногда заботу о соответствии кодовых таблиц сервера и программы просмотра берет на себя сервер. При этом он должен определить кодировку, на которую настроена программа просмотра, и высылать документы именно в этой кодировке. Для автоматического определения используется возможность протокола HTTP 1.0 передавать в заголовке запроса перечисление допустимых форматов документов и наборов символов MIME content-type и charset. По многим причинам этот подход довольно часто не срабатывает. В таком случае авторы документов, размещенных на сервере, часто прибегают к более универсальному приему, предлагая читателю из нескольких гиперссылок выбрать ту, которая указывает на нужный документ в желаемой кодировке. Подобное "меню" в WWW-документе может выглядеть так:

Некоторые программы просмотра умеют сами подстраиваться под кодировку документа, высылаемого сервером, если кодировка правильно указана в заголовке ответа WWW-сервера в специальном поле charset, предусмотренном протоколом HTTP 1.0. К сожалению, многие серверы не настроены так, чтобы добавлять это поле автоматически. Кодирование мультимедийных данных при передаче через интернет.

Multipurpose Internet Mail Extensions (MIME, англ. Multipurpose Internet Mail Extensionмногоцелевые расширения почты интернета, произносится как «майм»)

  • стандарт, описывающий передачу различных типов данных по электронной почте, а также, шире, спецификация для кодирования информации и форматирования сообщений таким образом, чтобы их можно было пересылать по Интернету. MIME определяет механизмы для передачи разного рода информации внутри текстовых данных (в частности, с помощью электронной почты), а именно: текст на языках, для которых используются кодировки, отличные от ASCII, и нетекстовый контент, такой как картинки, музыка, фильмы и программы. MIME является также фундаментальным компонентом коммуникационных протоколов, таких как HTTP, которым нужно, чтобы данные передавались в контексте сообщений подобных e-mail, даже если данные реально не являются e-mail.

Соседние файлы в предмете [НЕСОРТИРОВАННОЕ]