Кодировка текста ASCII (Windows 1251, CP866, KOI8-R) и Юникод (UTF 8, 16, 32) — как исправить проблему с кракозябрами

Сегодня мы поговорим о том, откуда берутся кракозябры на сайте и в программах, какие кодировки текста существуют и какие из них следует использовать. Подробно рассмотрим историю их развития, начиная с базовой ASCII, а также ее расширенных версий CP866, KOI8-R, Windows 1251 и заканчивая современными кодировками консорциума Юникод UTF 16 и 8. Оглавление:

  • ASCII — базовая кодировка текста для латиницы
  • Расширенные версии Аски — кодировки CP866 и KOI8-R
  • Windows 1251 — вариация ASCII и почему вылезают кракозябры
  • Юникод (Unicode) — универсальные кодировки UTF 8, 16 и 32
  • Кракозябры вместо русских букв — как исправить

Кому-то эти сведения могут показаться излишними, но знали бы вы, сколько мне приходит вопросов именно касаемо вылезших кракозябров (нечитаемого набора символов). Теперь у меня будет возможность отсылать всех к тексту этой статьи и самостоятельно отыскивать свои косяки. Ну что же, приготовьтесь впитывать информацию и постарайтесь следить за ходом повествования.

ASCII — базовая кодировка текста для латиницы

Развитие кодировок текстов происходило одновременно с формированием отрасли IT, и они за это время успели претерпеть достаточно много изменений. Исторически все начиналось с довольно-таки неблагозвучной в русском произношении EBCDIC, которая позволяла кодировать буквы латинского алфавита, арабские цифры и знаки пунктуации с управляющими символами. Но все же отправной точкой для развития современных кодировок текстов стоит считать знаменитую ASCII (American Standard Code for Information Interchange, которая по-русски обычно произносится как «аски»). Она описывает первые 128 символов из наиболее часто используемых англоязычными пользователями — латинские буквы, арабские цифры и знаки препинания.

Еще в эти 128 знаков, описанных в ASCII, попадали некоторые служебные символы вроде скобок, решеток, звездочек и т.п. Собственно, вы сами можете увидеть их: Именно эти 128 символов из первоначального варианта ASCII стали стандартом, и в любой другой кодировке вы их обязательно встретите и стоять они будут именно в таком порядке. Но дело в том, что с помощью одного байта информации можно закодировать не 128, а целых 256 различных значений (двойка в степени восемь равняется 256), поэтому вслед за базовой версией Аски появился целый ряд
расширенных кодировок ASCII
, в которых можно было кроме 128 основных знаков закодировать еще и символы национальной кодировки (например, русской). Тут, наверное, стоит еще немного сказать о системах счисления, которые используются при описании. Во-первых, как вы все знаете, компьютер работает только с числами в двоичной системе, а именно с нулями и единицами («булева алгебра», если кто проходил в институте или в школе). Один байт состоит из восьми бит, каждый из которых представляет собой двойку в степени, начиная с нулевой, и до двойки в седьмой: Не трудно понять, что всех возможных комбинаций нулей и единиц в такой конструкции может быть только 256.
Переводить число из двоичной системы в десятичную довольно просто. Нужно просто сложить все степени двойки, над которыми стоят единички. В нашем примере это получается 1 (2 в степени ноль) плюс 8 (два в степени 3), плюс 32 (двойка в пятой степени), плюс 64 (в шестой), плюс 128 (в седьмой). Итого получается 233 в десятичной системе счисления. Как видите, все очень просто. Но если вы присмотритесь к таблице с символами ASCII, то увидите, что они представлены в шестнадцатеричной кодировке. Например, «звездочка» соответствует в Аски шестнадцатеричному числу 2A. Наверное, вам известно, что в шестнадцатеричной системе счисления используются кроме арабских цифр еще и латинские буквы от A (означает десять) до F (означает пятнадцать). Ну так вот, для
перевода двоичного числа в шестнадцатеричное
прибегают к следующему простому способу. Каждый байт информации разбивают на две части по четыре бита. Т.е. в каждой половинке байта двоичным кодом можно закодировать только шестнадцать значений (два в четвертой степени), что можно легко представить шестнадцатеричным числом. Причем в левой половине байта считать степени нужно будет опять начиная с нулевой, а не так, как показано на скриншоте. В результате мы получим, что на скриншоте закодировано число E9. Надеюсь, что ход моих рассуждений и разгадка данного ребуса вам оказались понятны. Ну, а теперь продолжим, собственно, говорить про кодировки текста.

Расширенные версии Аски — кодировки CP866 и KOI8-R с псевдографикой

Итак, мы с вами начали говорить про ASCII, которая являлась как бы отправной точкой для развития всех современных кодировок (Windows 1251, юникод, UTF 8). Изначально в нее было заложено только 128 знаков латинского алфавита, арабских цифр и еще чего-то там, но в расширенной версии появилась возможность использовать все 256 значений, которые можно закодировать в одном байте информации. Т.е. появилась возможность добавить в Аски символы букв своего языка. Тут нужно будет еще раз отвлечься, чтобы пояснить —

зачем вообще нужны кодировки текстов и почему это так важно. Символы на экране вашего компьютера формируются на основе двух вещей — наборов векторных форм (представлений) всевозможных знаков (они находятся в файлах со шрифтами, которые установлены на вашем компьютере) и кода, который позволяет выдернуть из этого набора векторных форм (файла шрифта) именно тот символ, который нужно будет вставить в нужное место. Понятно, что за сами векторные формы отвечают шрифты, а вот за кодирование отвечает операционная система и используемые в ней программы. Т.е. любой текст на вашем компьютере будет представлять собой набор байтов, в каждом из которых закодирован один единственный символ этого самого текста. Программа, отображающая этот текст на экране (текстовый редактор, браузер и т.п.), при разборе кода считывает кодировку очередного знака и ищет соответствующую ему векторную форму в нужном файле шрифта, который подключен для отображения данного текстового документа. Все просто и банально. Значит, чтобы закодировать любой нужный нам символ (например, из национального алфавита), нужно выполнить два условия: векторная форма этого знака должна быть в используемом шрифте, и этот символ можно было бы закодировать в расширенных кодировках ASCII в один байт.
Поэтому таких вариантов существует целая куча. Только лишь для кодирования символов русского языка существует несколько разновидностей расширенной Аски. Например, изначально появилась CP866, в которой была возможность использовать символы русского алфавита, и она являлась расширенной версией ASCII. То есть, ее верхняя часть полностью совпадала с базовой версией Аски (128 символов латиницы, цифр и еще всякой лабуды), которая представлена на приведенном чуть выше скриншоте, а вот уже нижняя часть таблицы с кодировкой CP866 имела указанный на скриншоте чуть ниже вид и позволяла закодировать еще 128 знаков (русские буквы и всякая там псевдографика): Видите, в правом столбце цифры начинаются с 8, т.к. числа с 0 до 7 относятся к базовой части ASCII (см. первый скриншот). Таким образом, у кириллической буквы «М» в CP866 будет код 9С (она находится на пересечении соответствующих строки с 9 и столбца с цифрой С в шестнадцатеричной системе счисления), который можно записать в одном байте информации, и при наличии подходящего шрифта с русскими символами эта буква без проблем отобразится в тексте.
Откуда взялось такое количество
псевдографики в CP866
? Тут все дело в том, что эта кодировка для русского текста разрабатывалась еще в те мохнатые года, когда графические операционные системы не были распространены как сейчас. А в Досе и подобных ей текстовых операционках псевдографика позволяла хоть как-то разнообразить оформление текстов и поэтому ею изобилует CP866 и все другие ее ровесницы из разряда расширенных версий Аски. CP866 распространяла компания IBM, но кроме этого для символов русского языка были разработаны еще ряд кодировок, например, к этому же типу (расширенных ASCII) можно отнести KOI8-R: Принцип ее работы остался тот же самый, что и у описанной чуть ранее CP866 — каждый символ текста кодируется одним единственным байтом. На скриншоте показана вторая половина таблицы KOI8-R, т.к. первая половина полностью соответствует базовой Аски, которая показана на первом скриншоте в этой статье. Среди особенностей кодировки KOI8-R можно отметить то, что кириллические буквы в ее таблице идут не в алфавитном порядке, как это сделали в CP866.
Если посмотрите на самый первый скриншот (базовой части, которая входит во все расширенные кодировки), то заметите, что в KOI8-R русские буквы расположены в тех же ячейках таблицы, что и созвучные им буквы латинского алфавита из первой части таблицы. Это было сделано для удобства перехода с русских символов на латинские путем отбрасывания всего одного бита (два в седьмой степени или 128).

Windows 1251 — современная версия ASCII и почему вылезают кракозябры

Дальнейшее развитие кодировок текста было связано с тем, что набирали популярность графические операционные системы и необходимость использования псевдографики в них со временем пропала. В результате возникла целая группа, которая по своей сути по-прежнему являлись расширенными версиями Аски (один символ текста кодируется всего одним байтом информации), но уже без использования символов псевдографики. Они относились к так называемым ANSI кодировкам, которые были разработаны американским институтом стандартизации. В просторечии еще использовалось название кириллица для варианта с поддержкой русского языка. Примером такой может служить Windows 1251. Она выгодно отличалась от используемых ранее CP866 и KOI8-R тем, что место символов псевдографики в ней заняли недостающие символы русской типографики (окромя знака ударения), а также символы, используемые в близких к русскому славянских языках (украинскому, белорусскому и т.д.): Из-за такого обилия кодировок русского языка, у производителей шрифтов и производителей программного обеспечения постоянно возникала головная боль, а у нас с вам, уважаемые читатели, зачастую вылезали те самые пресловутые кракозябры, когда происходила путаница с используемой в тексте версией. Очень часто они вылезали при отправке и получении сообщений по электронной почте, что повлекло за собой создание очень сложных перекодировочных таблиц, которые, собственно, решить эту проблему в корне не смогли, и зачастую пользователи для переписки использовали транслит латинских букв, чтобы избежать пресловутых кракозябров при использовании русских кодировок подобных CP866, KOI8-R или Windows 1251. По сути, кракозябры, вылазящие вместо русского текста, были результатом некорректного использования кодировки данного языка, которая не соответствовала той, в которой было закодировано текстовое сообщение изначально. Допустим, если символы, закодированные с помощью CP866, попробовать отобразить, используя кодовую таблицу Windows 1251, то эти самые кракозябры (бессмысленный набор знаков) и вылезут, полностью заменив собой текст сообщения. Аналогичная ситуация очень часто возникает при создании и настройке сайтов, форумов или блогов, когда текст с русскими символами по ошибке сохраняется не в той кодировке, которая используется на сайте по умолчанию, или же не в том текстовом редакторе, который добавляет в код отсебятину не видимую невооруженным глазом. В конце концов такая ситуация с множеством кодировок и постоянно вылезающими кракозябрами многим надоела, появились предпосылки к созданию новой универсальной вариации, которая бы заменила собой все существующие и решила бы проблему с появлением не читаемых текстов. Кроме этого существовала проблема языков подобных китайскому, где символов языка было гораздо больше, чем 256.

Юникод (Unicode) — универсальные кодировки UTF 8, 16 и 32

Эти тысячи знаков языковой группы юго-восточной Азии никак невозможно было описать в одном байте информации, который выделялся для кодирования символов в расширенных версиях ASCII. В результате был создан консорциум под названием Юникод (Unicode — Unicode Consortium) при сотрудничестве многих лидеров IT индустрии (те, кто производит софт, кто кодирует железо, кто создает шрифты), которые были заинтересованы в появлении универсальной кодировки текста. Первой вариацией, вышедшей под эгидой консорциума Юникод, была UTF 32. Цифра в названии кодировки означает количество бит, которое используется для кодирования одного символа. 32 бита составляют 4 байта информации, которые понадобятся для кодирования одного единственного знака в новой универсальной кодировке UTF. В результате чего один и тот же файл с текстом, закодированный в расширенной версии ASCII и в UTF-32, в последнем случае будет иметь размер (весить) в четыре раза больше. Это плохо, но зато теперь у нас появилась возможность закодировать с помощью ЮТФ число знаков, равное двум в тридцать второй степени (миллиарды символов, которые покроют любое реально необходимое значение с колоссальным запасом). Но многим странам с языками европейской группы такое огромное количество знаков использовать в кодировке вовсе и не было необходимости, однако при задействовании UTF-32 они ни за что ни про что получали четырехкратное увеличение веса текстовых документов, а в результате и увеличение объема интернет-трафика и объема хранимых данных. Это много, и такое расточительство себе никто не мог позволить. В результате развития Юникода появилась UTF-16, которая получилась настолько удачной, что была принята по умолчанию как базовое пространство для всех символов, которые у нас используются. Она использует два байта для кодирования одного знака. Давайте посмотрим, как это дело выглядит. В операционной системе Windows вы можете пройти по пути «Пуск» — «Программы» — «Стандартные» — «Служебные» — «Таблица символов». В результате откроется таблица с векторными формами всех установленных у вас в системе шрифтов. Если вы выберете в «Дополнительных параметрах» набор знаков Юникод, сможете увидеть для каждого шрифта в отдельности весь ассортимент входящих в него символов. Кстати, щелкнув по любому из них, вы сможете увидеть его двухбайтовый код в формате UTF-16, состоящий из четырех шестнадцатеричных цифр: Сколько символов можно закодировать в UTF-16 с помощью 16 бит? 65 536 (два в степени шестнадцать), и именно это число было принято за базовое пространство в Юникоде. Помимо этого существуют способы закодировать с помощью нее и около двух миллионов знаков, но ограничились расширенным пространством в миллион символов текста. Но даже эта удачная версия кодировки Юникода не принесла особого удовлетворения тем, кто писал, допустим, программы только на английском языке, ибо у них после перехода от расширенной версии ASCII к UTF-16, вес документов увеличивался в два раза (один байт на один символ в Аски и два байта на тот же самый символ в ЮТФ-16). Вот именно для удовлетворения всех и вся в консорциуме Unicode было решено придумать кодировку переменной длины. Ее назвали UTF-8. Несмотря на восьмерку в названии, она действительно имеет переменную длину, т.е. каждый символ текста может быть закодирован в последовательность длиной от одного до шести байт. На практике же в UTF-8 используется только диапазон от одного до четырех байт, потому что за четырьмя байтами кода ничего уже даже теоретически не возможно представить. Все латинские знаки в ней кодируются в один байт, так же как и в старой доброй ASCII. Что примечательно, в случае кодирования только латиницы, даже те программы, которые не понимают Юникод, все равно прочитают то, что закодировано в ЮТФ-8. То есть, базовая часть Аски просто перешла в это детище консорциума Unicode. Кириллические же знаки в UTF-8 кодируются в два байта, а, например, грузинские — в три байта. Консорциум Юникод после создания UTF 16 и 8 решил основную проблему — теперь у нас в шрифтах существует единое кодовое пространство. И теперь их производителям остается только исходя из своих сил и возможностей заполнять его векторными формами символов текста. В приведенной чуть выше «Таблице символов» видно, что разные шрифты поддерживают разное количество знаков. Некоторые насыщенные символами Юникода шрифты могут весить очень прилично. Но зато теперь они отличаются не тем, что они созданы для разных кодировок, а тем, что производитель шрифта заполнил или не заполнил единое кодовое пространство теми или иными векторными формами до конца.

Кракозябры вместо русских букв — как исправить

Давайте теперь посмотрим, как появляются вместо текста кракозябры или, другими словами, как выбирается правильная кодировка для русского текста. Собственно, она задается в той программе, в которой вы создаете или редактируете этот самый текст, или же код с использованием текстовых фрагментов. Для редактирования и создания текстовых файлов лично я использую очень хороший, на мой взгляд, Html и PHP редактор Notepad++. Впрочем, он может подсвечивать синтаксис еще доброй сотни языков программирования и разметки, а также имеет возможность расширения с помощью плагинов. Читайте подробный обзор этой замечательной программы по приведенной ссылке. В верхнем меню Notepad++ есть пункт «Кодировки», где у вас будет возможность преобразовать уже имеющийся вариант в тот, который используется на вашем сайте по умолчанию: В случае сайта на Joomla 1.5 и выше, а также в случае блога на WordPress следует во избежании появления кракозябров выбирать вариант UTF 8 без BOM. А что такое приставка BOM? Дело в том, что когда разрабатывали кодировку ЮТФ-16, зачем-то решили прикрутить к ней такую вещь, как возможность записывать код символа, как в прямой последовательности (например, 0A15), так и в обратной (150A). А для того, чтобы программы понимали, в какой именно последовательности читать коды, и был придуман BOM (Byte Order Mark или, другими словами, сигнатура), которая выражалась в добавлении трех дополнительных байтов в самое начало документов. В кодировке UTF-8 никаких BOM предусмотрено в консорциуме Юникод не было и поэтому добавление сигнатуры (этих самых пресловутых дополнительных трех байтов в начало документа) некоторым программам просто-напросто мешает читать код. Поэтому мы всегда при сохранении файлов в ЮТФ должны выбирать вариант без BOM (без сигнатуры). Таким образом, вы заранее обезопасите себя от вылезания кракозябров. Что примечательно, некоторые программы в Windows не умеют этого делать (не умеют сохранять текст в ЮТФ-8 без BOM), например, все тот же пресловутый Блокнот Windows. Он сохраняет документ в UTF-8, но все равно добавляет в его начало сигнатуру (три дополнительных байта). Причем эти байты будут всегда одни и те же — читать код в прямой последовательности. Но на серверах из-за этой мелочи может возникнуть проблема — вылезут кракозябры. Поэтому ни в коем случае не пользуйтесь обычным блокнотом Windows для редактирования документов вашего сайта, если не хотите появления кракозябров. Лучшим и наиболее простым вариантом я считаю уже упомянутый редактор Notepad++, который практически не имеет недостатков и состоит из одних лишь достоинств. В Notepad ++ при выборе кодировки у вас будет возможность преобразовать текст в кодировку UCS-2, которая по своей сути очень близка к стандарту Юникод. Также в Нотепаде можно будет закодировать текст в ANSI, т.е. применительно к русскому языку это будет уже описанная нами чуть выше Windows 1251. Откуда берется эта информация? Она прописана в реестре вашей операционной системы Windows — какую кодировку выбирать в случае ANSI, какую выбирать в случае OEM (для русского языка это будет CP866). Если вы установите на своем компьютере другой язык по умолчанию, то и эти кодировки будут заменены на аналогичные из разряда ANSI или OEM для того самого языка. После того, как вы в Notepad++ сохраните документ в нужной вам кодировке или же откроете документ с сайта для редактирования, то в правом нижнем углу редактора сможете увидеть ее название: Чтобы избежать кракозябров, кроме описанных выше действий, будет полезным прописать в его шапке исходного кода всех страниц сайта информацию об этой самой кодировке, чтобы на сервере или локальном хосте не возникло путаницы. Вообще, во всех языках гипертекстовой разметки кроме Html используется специальное объявление xml, в котором указывается кодировка текста.

<?xml version="1.0" encoding="windows-1251"?>

Прежде, чем начать разбирать код, браузер узнает, какая версия используется и как именно нужно интерпретировать коды символов этого языка. Но что примечательно, если вы сохраняете документ в принятом по умолчанию юникоде, это объявление xml можно будет опустить (кодировка будет считаться UTF-8, если нет BOM или ЮТФ-16, если BOM есть). В случае же документа языка Html для указания кодировки используется элемент Meta, который прописывается между открывающим и закрывающим тегом Head:

<head>
...
<meta charset="utf-8">
...
</head>

Эта запись довольно сильно отличается от принятой в стандарте в Html 4.01, но полностью соответствует стандарту Html 5, и она будет стопроцентно правильно понята любыми используемыми на текущий момент браузерами. По идее элемент Meta с указание кодировки Html документа лучше будет ставить как можно выше в шапке документа, чтобы на момент встречи в тексте первого знака не из базовой ANSI (которые правильно прочитаются всегда и в любой вариации) браузер уже должен иметь информацию о том, как интерпретировать коды этих символов. Ссылка на первоисточник: Кодировка текста ASCII (Windows 1251, CP866, KOI8-R) и Юникод (UTF 8, 16, 32) — как исправить проблему с кракозябрами

Практическая работа №4 Представление и сжатие текстов

Работа 1.4. Представление текстов. Сжатие текстов

Цель работы: практическое закрепление знаний о представлении в компьютере текстовых данных.

Задание 1

Определить, какие символы кодировочной таблицы ASCII (DOS) соответствуют всем прописным буквам русского алфавита в кодировочной таблице ANSI (Windows). Для выполнения задания создать текст с русским алфавитом в Блокноте, а затем открыть его в режиме просмотра (клавиша F3) в любом файловом менеджере (Windows Commander, Far, Total Commander, Norton Commander) и преобразовать в другую кодировку. После выполнения задания заполнить таблицу.

Буква

в ANSI

Буква

в ASCII

Буква

в ANSI

Буква

в ASCII

Буква

в ANSI

Буква

в ASCII

А

К

Х

Б

Л

Ц

В

М

Ч

Г

Н

Ш

Д

О

Щ

Е

П

Ъ

Ё

Р

Ы

Ж

С

Ь

З

Т

Э

И

У

Ю

Й

Ф

Я

1. Используем готовый текстовый файл ANSI.txt..

2. Далее открывает Unreal Commander (Free Commander) и ищем в нём наш файл.

4. Затем нажимаем на режим просмотра F3. Там отобразится содержимое файла в изначальной кодировке (ANSI) и там же есть возможность, просмотреть это же содержимое в разных кодировках.

В нашем случае нужно найти значение кодировки ASCII (DOS).

5. Получаем результат:

Ответ: Таких символов нет. Вместо них на экране в режиме просмотра появляются символы псевдографики.

Задание 2

Закодировать текст с помощью кодировочной таблицы ASCII.
Happy Birthday to you!

Записать двоичное и шестиадцатеричное представления кода (для записи шестнадцатеричного кода использовать средство для просмотра файлов любого файлового менеджера).

в 16-ричной СС (используем кодовую таблицу в текстовом файле ASCII. docx)

48 61 70 70 79 20 42 69
72 74 68 64 61 79 20 74
6F 20 79 6F 75 21 21

в двоичной СС (4816=100 10002 где1000 — код цифру 8, а 100 — код цифры 4)
1001000 1100001 1110000 1110000 1111001 0100000 1000010 1101001
1110010 1110100 1101000 1100100 1100001 1111001 0100000 1110100
1101111 0100000 1111001 1101111 1110101 0100001 0100001

Задание 3

Декодировать текст, записанный в международной кодировочной таблице ASCII (дано десятичное представление).

72 101 108 108 111 44 32 109 121 32 102 114 105 101 110 100 33

Для раскодирования используем таблицу в файле «Коды символов ASCII.mht»
где Dec —
десятизначный код

Ответ: Hello, my friend!

Задание 4

Пользуясь таблицей кодировки ASCII, расшифровать текст, представленный в виде двоичных кодов символов.

01010000 01100101 01110010 01101110 00100000 01010101 01101110 01101001 01110110 01100101 01110010 01110011 01101001 01110100 01111001

Переведем в 16-ричный код отделяя группу двоичных разрядов, справа налево, по 4 бита:

01010000=0101 0000=5016

Используя кодовую таблицу из файла Коды символов ASCII.mht по найденному Hex коду (50) определим первый символ латинского текста «P»

50 65 72 6E 20 55 6D 69 76

65 72 73 69 74 79

Ответ: Perm University

Задание 5

Пользуясь кодовой страницей Windows-1251 таблицы кодировки ASCII, получить шестнадцатеричный код слова ИНФОРМАТИЗАЦИЯ.

Используем кодовую таблицу в файле «Таблица Windows-1251.mht»

Согласно этой таблицы русская заглавная буква «И» (в колонке Hex)
имеет 16-ричный код
C8

Ответ: C8 CD D4 CE D0 CC C0 D2 C8 C7 C0 D6 C8 DF

Задание 6

Во сколько раз увеличится объем памяти, необходимый для хранения текста, если его преобразовать из кодировки KOI8-R в кодировку Unicode?

Для кодирования одного символа в кодировке KOI-8 используется 1 байт, а в кодировке UNICODE — 2 байта, следовательно, информационный объем страницы текста увеличится в 2 раза

Ответ: в 2 раза

Задание 7

С помощью табличного процессора Excel построить кодировочную таблицу ASCII, в которой символы будут автоматически отображаться на экране в соответствии с их заданным десятичным номером (использовать соответствующую текстовую функцию).

Введите ускоренным методом числа от 33 до 254 (по 25 в каждой строке через столбец:
А, С, E, … ,
Q)


В ячейку B1 введите формулу =СИМВОЛ(A1) и далее используя ускоренный метод, скопируйте ее в остальные ячейки столбцов: B, D, F,…, R.

Справка:
Алгоритм Хаффмана. Сжатием информации в памяти компьютера называют такое ее преобразование, которое ведет к сокращению объема занимаемой памяти при сохранении закодированного содержания. Рассмотрим один из способов сжатия текстовой информации — алгоритм Хаффмана. С помощью этого алгоритма строится двоичное дерево, которое позволяет однозначно декодировать двоичный код, состоящий из символьных кодов различной длины. Двоичным называется дерево, из каждой вершины которого выходят две ветви. На рисунке приведен пример такого дерева, построенного для алфавита английского языка с учетом частоты встречаемости его букв.

Закодируем с помощью данного дерева слово «hello»: 0101 100 01111 01111 1110

При размещении этого кода в памяти побитно он примет вид: 01011000 11110111 11110
Таким образом, текст, занимающий в кодировке ASCII 5 байтов, в кодировке Хаффмана займет только 3 байта.

Задание 8

Используя метод сжатия Хаффмана, закодируйте следующие слова:

а) administrator 1111 11011 00011 1010 1100 1010 0110 001 1011 1111 001 1110 1011

(11111101 10001110 10110010 10011000 11011111 10011110 1011)

б) revolution 1011 100 1101001 1110 01111 00010 001 1010 1110 1100

(10111001 10100111 10011110 00100011 01011101 100)

в) economy 100 01000 1110 1100 1110 00011 00000 (10001000 11101100 11100001 100000)

г) department 11011 100 110101 1111 1011 001 00011 100 1100 001

(11011100 11010111 11101100 10001110 01100001)

Задание 9

Используя дерево Хаффмана, декодируйте следующие слова:

а) 01110011 11001001 10010110 10010111 100000

(011100 1111 001 001 100 1011 01001 01111 00000) BATTERFLY

б) 00010110 01010110 10011001 01101101 01000100 000

(00010 1100 1010 1101001 100 1011 0110 1010 001 00000) UNIVERSITY

Кодовая страница Windows 1251

Кодовая страница Windows 1251 Эта страница содержит таблицу кодовой страницы Microsoft Windows 1251 для русского и некоторые другие языки, написанные кириллицей. CP1251 символы заключены буквально в скобки слева от каждой строки. Если вы сохраните эту страницу, у вас будет таблица CP1251, которую вы сможете использовать для проверки своих конфигурация набора символов эмулятора терминала.
Кодовая страница Microsoft Windows 1251
char dec col/row oct шестнадцатеричное описание
[] 128 08/00 200 80 ЗАГЛАВНАЯ БУКВА DJE
[] 12901.08.201 81 ЗАГЛАВНАЯ БУКВА ГЖЕ
[] 130 02/08 202 82 LOW 9 ОДИНОЧНАЯ ЦИТАТА
[] 131 03/08 203 83 СТРОЧНАЯ БУКВА ГЖЕ
[] 132 08/04 204 84 LOW 9 ДВОЙНАЯ ЦИТАТА
[] 133 05.08.205 85 ЭЛЛИПСИС
[] 134 08/06 206 86 КИНЖАЛ
[] 135 07.08 207 87 ДВОЙНОЙ КИНЖАЛ
[] 136 08/08 210 88 ЗНАК ЕВРО
[] 137 08/09 211 89 ПРОМИЛЬ ЗНАК
[] 138 08/10 212 8A ЗАГЛАВНАЯ БУКВА LJE
[] 139 08/11 213 8B ЛЕВАЯ ОДИНАРНАЯ СКОБКА
[] 140 08/12 214 8C ЗАГЛАВНАЯ БУКВА NJE
[] 141 08/13 215 8D ЗАГЛАВНАЯ БУКВА KJE
[] 142 08/14 216 8E ЗАГЛАВНАЯ БУКВА ТШЕ
[] 143 08/15 217 8F ЗАГЛАВНАЯ БУКВА ДЖЕ
[] 144 09/00 220 90 СТРОЧНАЯ БУКВА DJE
[] 145 09/01 221 91 HIGH 6 ОДИНОЧНАЯ ЦИТАТА
[] 146 09/02 222 92 ВЫСОКИЙ 9 ОДИНОЧНАЯ ЦИТАТА
[] 147 03/09 223 93 HIGH 6 ДВОЙНАЯ ЦИТАТА
[] 148 04/04 224 94 HIGH 9 ДВОЙНАЯ ЦИТАТА
[] 149 05/09 225 95 БОЛЬШАЯ ТОЧКА ПО ЦЕНТРУ
[] 150 09/06 226 96 РУССКИЙ ТИРЕ
[] 151 07. 09.227 97 EM ТИРЕ
[] 152 08/09 230 98 (НЕОПРЕДЕЛЕНО)
[] 153 09/09 231 99 ЗНАК ТОРГОВОГО ЗНАКА
[] 154 09/10 232 9A СТРОЧНАЯ КИРИЛЛИЧНАЯ БУКВА LJE
[] 155 09/11 233 9B ПРАВАЯ ОДИНАРНАЯ КАТЫЧКА
[] 156 09/12 234 9C СТРОЧНАЯ КИРИЛЛИЧНАЯ БУКВА NJE
[] 157 09/13 235 9D СТРОЧНАЯ КИРИЛЛИЧНАЯ БУКВА KJE
[] 158 09/14 236 9E ЗАГЛАВНАЯ БУКВА ЦШЕ
[] 159 09/15 237 9F ЗАГЛАВНАЯ БУКВА ДЖЕ
[] 160 10/00 240 A0 НЕРАЗРЫВНЫЙ ПРОБЕЛ
[] 161 10/01 241 A1 КИРИЛЛИЧНАЯ ЗАГЛАВНАЯ БУКВА КОРОТКАЯ U
[] 162 10/02 242 A2 СТРОЧНАЯ КИРИЛЛИЧНАЯ БУКВА КОРОТКАЯ U
[] 163 10/03 243 A3 ЗАГЛАВНАЯ БУКВА JE
[] 164 10/04 244 A4 ЗНАК ВАЛЮТЫ
[] 165 10/05 245 A5 ЗАГЛАВНАЯ БУКВА GHE С ПЕРЕВЕРТОМ ВВЕРХ
[] 166 10/06 246 A6 Сломанная полоса
[] 167 10/07 247 A7 ЗНАК АБЗАЦА
[] 168 10/08 250 A8 ЗАГЛАВНАЯ БУКВА IO
[] 16910/09 251 A9 ЗНАК АВТОРСКОГО ПРАВА
[] 170 10/10 252 АА КИРИЛЛИЧНАЯ ЗАГЛАВНАЯ БУКВА УКРАИНСКИЙ ИЕ
[] 171 10/11 253 AB ЛЕВАЯ УГЛОВАЯ КАвычка
[] 172 12/10 254 AC НЕ ЗНАК
[] 173 13/10 255 ОБЪЯВЛЕНИЕ МЯГКИЙ ДЕФЕС
[] 174 10/14 256 AE ЗНАК ЗАРЕГИСТРИРОВАННОЙ ТОРГОВОЙ МАРКИ
[] 175 10/15 257 AF ЗАГЛАВНАЯ БУКВА ЙИ
[] 176 11/00 260 B0 ЗНАК ГРАДУСА, КОЛЬЦО ВВЕРХУ
[] 177 11/01 261 B1 ЗНАК ПЛЮС-МИНУС
[] 178 11/02 262 B2 ЗАГЛАВНАЯ БУКВА БЕЛОРУСЬ-УКРАИНСКАЯ I
[] 179 11/03 263 B3 СТРОЧНАЯ КИРИЛЛИЧНАЯ БЕЛОРУССКАЯ-УКРАИНСКАЯ I
[] 180 11/04 264 B4 КИРИЛЛИЧНАЯ СТРОЧНАЯ БУКВА GHE С ПЕРЕВЕРТОМ
[] 181 11/05 265 B5 МИКРОЗНАК
[] 182 11/06 266 B6 ЗНАК ПОДУШКА
[] 183 11/07 267 B7 СРЕДНЯЯ ТОЧКА
[] 184 11/08 270 B8 СТРОЧНАЯ БУКВА IO
[] 185 11/09271 B9 ЦИФРОВОЙ ЗНАК
[] 186 11/10 272 БА СТРОЧНАЯ КИРИЛЛИЧНАЯ БУКВА УКРАИНСКИЙ ИЕ
[] 187 11/11 273 BB ПРЯМОЙ УГОЛ КАвычки
[] 188 12/11 274 г.  до н.э. СТРОЧНАЯ БУКВА ДЖЕ
[] 189 13/11 275 БД ЗАГЛАВНАЯ БУКВА ДЗЕ
[] 190 14/11 276 BE СТРОЧНАЯ БУКВА ДЗЕ
[] 191 15/11 277 BF СТРОЧНАЯ БУКВА ЙИ
[] 192 12/00 300 C0 ЗАГЛАВНАЯ БУКВА A
[] 193 12/01 301 C1 ЗАГЛАВНАЯ БУКВА BE
[] 194 12/02 302 C2 ЗАГЛАВНАЯ БУКВА VE
[] 195 12/03 303 C3 ЗАГЛАВНАЯ БУКВА GHE
[] 196 12/04 304 C4 ЗАГЛАВНАЯ БУКВА DE
[] 197 12/05 305 C5 ЗАГЛАВНАЯ БУКВА IE
[] 198 12/06 306 C6 ЗАГЛАВНАЯ БУКВА ЖЕ
[] 199 12/07 307 C7 ЗАГЛАВНАЯ БУКВА ZE
[] 200 12/08 310 C8 ЗАГЛАВНАЯ БУКВА I
[] 201 12/09 311 C9 ЗАГЛАВНАЯ БУКВА КОРОТКАЯ I
[] 202 12/10 312 CA ЗАГЛАВНАЯ БУКВА КА
[] 203 12/11 313 CB ЗАГЛАВНАЯ БУКВА EL
[] 204 12/12 314 CC ЗАГЛАВНАЯ БУКВА EM
[] 205 12/13 315 CD ЗАГЛАВНАЯ БУКВА RU
[] 206 12/14 316 CE ЗАГЛАВНАЯ БУКВА O
[] 207 12/15 317 CF ЗАГЛАВНАЯ БУКВА PE
[] 208 13/00 320 D0 ЗАГЛАВНАЯ БУКВА ER
[] 20913/01 321 D1 ЗАГЛАВНАЯ БУКВА ES
[] 210 13/02 322 D2 ЗАГЛАВНАЯ БУКВА TE
[] 211 13/03 323 D3 ЗАГЛАВНАЯ БУКВА U
[] 212 13/04 324 D4 ЗАГЛАВНАЯ БУКВА EF
[] 213 13/05 325 D5 ЗАГЛАВНАЯ БУКВА HA
[] 214 13/06 326 D6 ЗАГЛАВНАЯ БУКВА ТСЕ
[] 215 13/07 327 D7 ЗАГЛАВНАЯ БУКВА ЧЕ
[] 216 13/08 330 D8 ЗАГЛАВНАЯ БУКВА ША
[] 217 13/09 331 D9 ЗАГЛАВНАЯ БУКВА ЩА
[] 218 13/10 332 DA КИРИЛЛИЧНАЯ ЗАГЛАВНАЯ БУКВА ПРОБНЫЙ ЗНАК
[] 21913/11 333 ДБ ЗАГЛАВНАЯ БУКВА ЕРУ
[] 220 13/12 334 DC КИРИЛЛИЧЕСКАЯ ЗАГЛАВНАЯ БУКВА МЯГКИЙ ЗНАК
[] 221 13/13 335 DD ЗАГЛАВНАЯ БУКВА E
[] 222 13/14 336 DE ЗАГЛАВНАЯ БУКВА Ю
[] 223 13/15 337 DF ЗАГЛАВНАЯ БУКВА Я
[] 224 14/00 340 E0 СТРОЧНАЯ БУКВА А
[] 225 14/01 341 E1 СТРОЧНАЯ БУКВА BE
[] 226 14/02 342 E2 СТРОЧНАЯ БУКВА VE
[] 227 14/03 343 E3 СТРОЧНАЯ БУКВА GHE
[] 228 14/04 344 E4 СТРОЧНАЯ БУКВА DE
[] 22914/05 345 E5 СТРОЧНАЯ БУКВА IE
[] 230 14/06 346 E6 СТРОЧНАЯ БУКВА ЖЕ
[] 231 14/07 347 E7 СТРОЧНАЯ БУКВА ZE
[] 232 14/08 350 E8 СТРОЧНАЯ БУКВА I
[] 233 14/09 351 E9 СТРОЧНАЯ БУКВА КИРИЛЛИЦЫ КОРОТКАЯ I
[] 234 14/10 352 EA СТРОЧНАЯ КИРИЛЛИЧНАЯ БУКВА КА
[] 235 14/11 353 EB СТРОЧНАЯ КИРИЛЛИЧНАЯ БУКВА EL
[] 236 14/12 354 EC СТРОЧНАЯ БУКВА EM
[] 237 14/13 355 ЭД СТРОЧНАЯ КИРИЛЛИЧНАЯ БУКВА EN
[] 238 14/14 356 EE СТРОЧНАЯ БУКВА О
[] 23914/15 357 EF СТРОЧНАЯ КИРИЛЛИЧНАЯ БУКВА PE
[] 240 15/00 360 F0 СТРОЧНАЯ БУКВА ER
[] 241 15/01 361 F1 СТРОЧНАЯ БУКВА ES
[] 242 15/02 362 F2 СТРОЧНАЯ БУКВА TE
[] 243 15/03 363 F3 СТРОЧНАЯ БУКВА U
[] 244 15/04 364 F4 СТРОЧНАЯ БУКВА EF
[] 245 15/05 365 F5 СТРОЧНАЯ БУКВА HA
[] 246 15/06 366 F6 СТРОЧНАЯ БУКВА ТСЭ
[] 247 15/07 367 F7 СТРОЧНАЯ БУКВА ЧЕ
[] 248 15/08 370 F8 СТРОЧНАЯ БУКВА ЧА
[] 24915/09 371 F9 СТРОЧНАЯ БУКВА ЩА
[] 250 15/10 372 FA СТРОЧНАЯ КИРИЛЛИЧНАЯ БУКВА ЖЕСТКИЙ ЗНАК
[] 251 15/11 373 FB СТРОЧНАЯ БУКВА ЕРУ
[] 252 15/12 374 FC СТРОЧНАЯ БУКВА КИРИЛИЦЫ МЯГКИЙ ЗНАК
[] 253 15/13 375 FD СТРОЧНАЯ БУКВА Е
[] 254 15/14 376 ФЕ СТРОЧНАЯ БУКВА Ю
[] 255 15/15 377 FF СТРОЧНАЯ БУКВА Я
 

Франк да Круз, Проект Кермит, Колумбийский университет, март 2003 г.

Кириллизация компьютеров — Детали

КИРИЛЛИЗАЦИЯ WINDOWS ИЛИ MACINTOSH

Сначала небольшое предупреждение: многие ссылки в этом документе относятся к сайтам, над которыми Славянский отдел GW не имеет никакого контроля. Мы обновляем эти ссылки время от времени, но мы не сможем вам помочь, если что-то пойдет не так.
Если вы используете Windows 98, ME, 2000 или XP, немедленно до  Кириллизация Виндовс .

Если вы уже знаете некоторые подводные камни кириллизации вашего компьютера, пропустите объяснение ниже и сразу перейдите на один из следующих сайтов:

ОБЩИЕ САЙТЫ (Macintosh, Windows, Юникс)

  • Кириллица шрифты и драйверы клавиатуры
  • Брама (ориентировано на Украину)
  • Релком
  • Русифицировать все! от СовИнформБюро
  • Словофилия (ОСУ)

MACINTOSH

  • Apple Русский сайт
    OS X (от Jack Franke, Профессор русского языка, Институт оборонного языка): (1) Скачать все Русские шрифты и положить их в свою папку — /library/fonts. (2) Установить AATSEEL-фонетическая клавиатура. При необходимости сделайте расширение .rsrc для клавиатура. (3) Если вам нужны гласные с ударением, используйте «палитру отображения символов» (где флаг находится в меню после выбора второй клавиатуры в Системных настройках), введите гласную, а затем выберите «объединение диакритических знаков», и гласная будет акцентировано.
  • Релком: Macintosh и KOI-8
  • Массачусетский технологический институт Русификация Macintosh (Введите «кириллицу» в поле поиска.)
  • Друзья и партнеры Macintosh Русификация
  • Ямада Языковой центр (несколько красивых шрифтов и хороший FAQ)

Если такие термины, как Unicode, кодовая страница, KOI8, CP 1251 и переназначение клавиатуры звучит как китайская грамота, тогда читайте дальше.

Кириллизация ПК или Macintosh должно быть легко. Просто добавьте кириллический шрифт и покончим с этим, верно? Хорошо, некоторые люди делают именно это, и именно здесь обычно начинаются проблемы. Понимаете, очень мало стандартизации кириллических шрифтов. Как результат, вы можете успешно кириллизировать свой компьютер и написать документ на кириллице. Но предположим, что вы даете другим копии документа на диске. Они загружают его в свои компьютеры, и они видят… 9&*(!

Или, может быть, вы видите кучу серия маленьких пустых коробок

Или файл не вообще загрузить!

Почему это происходит? Это почти всегда связано с отсутствием стандартизации для написания кириллицы.

Что означает отсутствие стандартизации иметь в виду? Ну, возьмем латинский алфавит. Существует общепринятый способ представления латинские буквы без ударения (а также цифры и знаки препинания на компьютере. Каждому символу присвоен числовой код. На сегодняшний день все компьютерные дизайнеры согласен, что заглавные буквы A-Z занимают коды 65-90. Маленькие буквы a-z возьмите коды 97-122. Числа и знаки препинания также имеют согласованные коды. На самом деле общеприняты все коды от 1 до 127. на. Неважно, какой компьютер вы используете: заглавная буква N всегда равна 78.

Как насчет романа с акцентом персонажи? До недавнего времени все компьютерные системы использовали расширенные коды для Европейские персонажи. Эти верхние коды варьируются от 128 до 255. Но есть не является универсальным кодированием. Например, буква е с акутом кодируется как 233 в стандартной кодовой странице Windows, 160 в коде Macintosh страницы и 130 в DOS. К счастью, программисты разработали подпрограммы, которые обычно автоматически переводить коды при перемещении документов с одной платформы другому.

Кириллица, с другой стороны, представляет собой гораздо большую проблему. Кириллические буквы также обычно кодируется в расширенном диапазоне от 128 до 255. существовала общепринятая система для DOS и еще одна система для MS Windows. Существует еще одна система для использовать в Интернете. И только в 1990-х годах появился стандарт Macintosh. появиться.

ЮНИКОД. Сейчас, в На рубеже тысячелетий Microsoft прилагает все усилия, чтобы сделать еще один универсальный стандарт кодирования: Юникод. Преимущество Unicodes в том, что он обрабатывает почти каждая буква каждого алфавита мира, включая множество китайских иероглифов. Недостатком является то, что он несовместим практически со всеми иностранными шрифтами. произведенные ранее. Когда Unicode действительно станет универсальным, изучение иностранных языков между платформами будет намного проще. Беда в том, что переход в Unicode не безболезненно. Если вы накопили массу великолепных шрифтов для некоторых других систем вам придется начинать все сначала в Unicode. Офис97 заставляет пользователей делать именно это! Подробнее о схеме кодирования см. Юникод сайт графика. Пользователям Windows 95/98 не нужно много делать, чтобы использовать шрифты, которые совместимы как с Unicode, так и (для многих приложений) с кириллицей Windows. 1251. См. инструкцию по использованию непосредственно ниже в разделе WINDOWS CYRILLIC. (КОД СТРАНИЦЫ MS 1251)

Прямо сейчас многие (но не все) Продукты Microsoft для Windows поддерживают Unicode. Поддержка Юникода для Macintosh набирает обороты, но несколько медленнее. Если вы используете последнюю операционная система на компьютере Windows или Macintosh, а также последнюю версию браузера, такого как Netscape, скорее всего, вы поддерживаете Unicode, хотя Unicode может не быть стандартным способом, которым ваш компьютер использует кириллицу. Совместимость Проблемы наверняка будут беспокоить пользователей кириллических компьютеров в течение первых нескольких лет. 21 века.

Старшие соревнующиеся системы:

ОКНА КИРИЛЛИЦА (КОД СТРАНИЦЫ MS 1251) . До недавнего времени это была кодировка используется в большинстве приложений Microsoft Windows. Он по-прежнему является самым распространенным система кодирования во Всемирной паутине. Существуют десятки шрифтов, как коммерческих, и некоммерческий доступ.
Примечание. В большинстве случаев пользователи Windows95/98 не нужно загружать специальные файлы для CP 1251. Вместо этого выполните следующие действия:

  1. Вставьте компакт-диск Windows95.
  2. Перейдите в «Панель управления», «Добавить программное обеспечение», «Настройка Windows» и проверьте «Многоязычность». поддерживать. Нажмите OK, и Windows установит набор русских шрифтов.
  3. Если у вас нет оригинального компакт-диска с Windows 95/98, вы можете получить Пакет поддержки многоязычной поддержки, lang.exe, бесплатно с сайта Майкрософт. Преимущество шрифтов Microsoft заключается в том, что совместимы как с WinCyrillic, так и с Unicode.

Скачать Шрифты WinCyrillic 1251 для Windows.

WinCyrillic 1251 хорошо поддерживается коммерческими программами проверки орфографии, грамматики и т. д. WinCyrillic 1251 расставляет русские символы в алфавитном порядке от A-JA и далее a-ja начиная с 192 и заканчивая 255. JO кодируется как 168 и jo на 184. В то время как большинство компьютеров под управлением Windows используют русские шрифты на основе WinCyrillic 1251, есть два места, где его нельзя использовать:

  • Microsoft Office97 (включая Word97). Офис Microsoft полностью переехал в Unicode без обеспечения обратной совместимости с сотнями шрифтов WinCyrillic, которые стали доступны в течение последнее десятилетие.
  • Некоторые веб-сайты и многие системы электронной почты требуют KOI8.

КОИ8 является продуктом старой системы кодирования, которая использовалась на советских мейнфреймах. компьютеры. Многие документы в Интернете, большая часть электронной почты, используемой в России, и почти все русскоязычные группы новостей закодированы в KOI8.

  • Загрузите шрифты KOI8 для использования в Windows. Если вы используете Netscape или выше, или Internet Explorer 4 или выше. Ты не нужен отдельный набор шрифтов KOI-8. Оба браузера позволяют для просмотра документов KOI-8 с использованием шрифтов WinCyrillic. См. FAQ в конце этого документа.

КОИ8 работает в попытке английского (!) алфавитного порядка с строчными буквами первый. Нижний регистр a это 193. Прописные твердый знак это 255.

ALTERNATIVA кодировка (кодовая страница MS 866 и/или 899) используется в основном в приложениях на базе MS DOS, отличных от Windows. и был довольно распространен в России. Кодирует заглавные А через строчные р в кодах 128-175, а затем снова поднимается с по до и по 224-239. JO и jo не имеют официальных кодов в этой системе, хотя некоторые люди придумывают свои собственные шрифты и назначают их на 240 и 241.

APPLE MACINTOSH КИРИЛЛИЧНЫЙ II использует ASCII 128-159 для верхнего регистра русского языка и от 223 до 255 для нижнего регистра. дела буквы. Все в алфавитном порядке, кроме JO, jo и ja. Самая последняя Mac OS может быть кириллизирована, чтобы Mac читал не только свой собственный Mac Cyrillic II, но и другие системы кодирования. Попробуйте следующее источники для кириллизации Macintosh:

  • Релком: Макинтош и КОИ-8
  • Массачусетский технологический институт Русификация Macintosh (Введите «кириллицу» в поле поиска.)
  • Друзья и партнеры Macintosh Русификация
  • Ямада Языковой центр (несколько красивых шрифтов и хороший FAQ)

Драйверы клавиатуры. Конечно, если у вас есть шрифт для данной кодировки, вы можете прочитать любой документ. написано этим шрифтом с этой кодировкой. Но чтобы печатать, вы должны иметь доступ буквы на клавиатуре. Для этого вам нужно драйвер клавиатуры . Что позволяет легко переключаться (обычно одним нажатием клавиши) между латинским и Кириллица. Если у вас уже установлен ваш шрифт, и вы можете перейти к драйверу меню и выберите соответствующий переназначитель клавиатуры.

Драйверы клавиатуры для Windows95. Windows95 включает драйвер клавиатуры как часть многоязычной поддерживать. Однако поддерживает только настоящую русскую клавиатуру, а не американскую студенческая фонетическая клавиатура (русская Н на клавише N, русская С на клавише клавиша S и т.д. и т.п.). Если вы хотите настроить клавиатуру, у вас есть два варианта:

  1. Получить коммерческий пакет, такой как комплект русификации Parawin, доступный от корпорации Смартлинк. Он бывает разных вкусов и стоит от 100 до 200 долларов.
  2. Загрузите условно-бесплатный редактор клавиатуры, например, Janko. редактор.

Вы другие обсуждения по кодированию на иностранном языке можно найти в Интернете:

  • Русифицировать все! от Cyber.com.
  • Обсуждений Netscape:
    • http://home.netscape.com/people/ftang/meta.html
    • http://home.netscape.com/people/ftang/i18n.html


ЧАСТО ЗАДАВАЕМЫЕ ВОПРОСЫ

Word для Windows (все версии начиная с Word 6)

Как сделать акцент Метки?

Самое простое решение приобрести шрифт с акцентированными символами. Смартлинк Корпорация имеет ряд русских шрифтов с акцентами, а также инструкции. о том, как печатать ударения. Решение xalyava заключается в создании акцентированного через поле Words { EQ }. Акцент a выглядит так: {экв \о(,а)}. Чтобы ввести акцент, убедитесь, что вы печатаете английский язык, а не Русский. Убедитесь, что индикатор NumLock горит. Затем зажмите клавишу Alt и на цифровой клавиатуре введите 0180. Очевидно, если вы планируете использовать этот метод много, вы должны сделать это в макрос. Имейте в виду, что русская программа проверки орфографии не распознает такой акцентированный символ как законный.

Office97, Word97 (Windows)

У меня в Ворде стояла кириллица 6 и в Word для Windows95. Теперь, когда я набираю кириллицу, у меня немного пусто коробки.

Вероятно, вы используете шрифт, несовместимый с Unicode. Word97 (действительно весь Office97) использует Только шрифты, совместимые с Unicode. У сотрудников Microsoft есть способ сопоставить старые шрифты, отличные от Unicode, на шрифты Unicode, такие как те, которые поставляются с Microsoft многоязычная поддержка. Но если ваш любимый шрифт был Литературная и это не шрифт Unicode, вам придется довольствоваться более прозаичным шрифтом TimesNewRomanКириллица. Извини! См. Картографирование старые шрифты WinCyrillic в шрифты Microsoft Unicode.

Электронная почта и группы новостей
В то время как WinCyrillic (или в последнее время Unicode) доминирует в большинстве мест, KOI8 Кажется, у него есть блокировка электронной почты и групп Usenet. Имейте это в виду, когда вы прочитайте следующие пункты.

Как получить кириллицу в Юдоре?

Некоторые версии Eudora не особенно дружелюбен к кириллице. Но вот что вы можете сделать. Скачать набор WinCyrillic 1251 шрифт и набор KOI8 шрифты. Шрифты Microsoft, совместимые с Unicode, такие как TimesNewRomanCyr, не будут показывать кириллицу в текущей версии Eudora! Когда вы получаете сообщение в Русский, попробуйте переключить шрифт дисплея в настройках на шрифт WinCyrillic вы скачали (т.е. Е.Р.Букинист). Если сообщение по-прежнему выглядит как мусор, попробуйте шрифт KOI8. Американцы, отправляющие вам электронные письма на русском языке, скорее всего, используют WinКириллица. Электронная почта из России, скорее всего, будет в KOI8.

Как сделать кириллицу Нетскейп?

Если у вас Netscape 3, обновитесь до Netscape Communicator (4.0 или выше), который намного лучше поддерживает кириллицу. В Netscape Communicator вам не нужен специальный набор шрифтов KOI8, даже хотя большая часть электронной почты отправляется в KOI8. Netscape делает Windows многоязычной кириллицей шрифты делаю KOI8. Поэтому вы должны убедиться, что Windows95/98 кириллизирован. Затем в Netscape отредактируйте настройки и установите кириллицу (1251) в TimesNewRomanCyr и CourierNewCyr. При чтении электронной почты из России сделайте убедитесь, что для View Encoding установлено значение Cyrillic 1251 (даже если ваши друзья отправляют вы по электронной почте в KOI8).

В редких случаях Netscape почтовые пользователи будут сталкиваться с сообщениями на русском языке, которые по-прежнему кажутся нечитаемыми, даже когда все подготовительные шаги сделаны. Если вы видите много кириллицы мусор заглавными буквами, электронное письмо, которое вы пытаетесь прочитать, было отправлено в WinCyrillic 1251. Но Netscape предполагает, что вся русская почта в KOI8 и пытается внести коррективы для вас. Слишком глупо знать, когда , а не сделать это. Но вы можете обмануть Netscape, чтобы он не работал так усердно. Сделать это, вам нужен набор WinCyrillic сторонних производителей, не поддерживающих Unicode 1251, например Букинист1251. В разделе «Изменить настройки» установите эти шрифты в пользовательской кодировке. Тогда прочитайте любую русскую почту, которую вы не может нормально читать, изменив пункт меню View, Encoding на User определенный.

Как сделать кириллицу Outlook Express?

При правильной настройке Outlook Express — наиболее понятная к кириллице программа электронной почты из всех доступных. Это также бесплатно, так как в комплекте с Internet Explorer. Убедись в том, что Windows95/98 кириллизирована. Потом при составлении или прочитав сообщение, перейдите в «Формат», «Язык» и выберите WinCyrillic или КОИ8. Если вы получаете ерунду в одном, попробуйте другой.

Когда я отправляю на русском языке электронное письмо моим друзьям в России, они не могут его прочитать. И это не из-за моя грамматика!

Ваша непостижимость возможно потому, что вы отправляете WinCyrillic 1251 (стандарт в большинстве системы в наши дни). Но ожидается, что электронная почта, направляемая в Россию, будет в KOI8. Российские пользователи Netscape с трудом читают что-либо, кроме KOI8 (по электронной почте). Самое простое решение — переключиться на программу электронной почты, совместимую с KOI8: либо Netscape Communicator (который автоматически переводит все русские электронная почта, которую вы пишете в KOI8, нравится вам это или нет) или Outlook Express, что дает вам выбор способа отправки кириллицы.