Windows-1251
Windows-1251 — цифровая (компьютерная) кодировка.
Расширяеет ASCII для представления букв кириллицы и других символов. Самая популярная в Интернете однобайтовая (чисто 8-битная) кодировка кириллицы и вторая по используемости однобайтовая кодировка символов вообще после Windows-1252. Является одной из кодовых страниц для операционной системы Windows; под тем же номером внесена в каталог корпорации IBM.[1] На UNIX-системах называется «CP1251»; исторически называлась «кириллицей Windows» или «кириллицей Microsoft».
Набор и расположение символов[править]
Основой для Windows-1251 служит кодовая страница западной латиницы Windows-1252, вторая половина кодовой таблицы которой освобождена от специфичных для латиницы букв и ряда подобных им знаков, а также нескольких таких (малоиспользуемых в кириллической типографике) символов, как простые двоичные дроби. Однако, свои места сохраняют символы «©», «®» и «™». Остаются нетронутыми не только все ASCII-символы, но и несколько (уточнить) позиций типографики. Это обеспечивает некоторую меру совместимости страницы 1251 с Windows-1252 и ею подобными: хотя при чтении записанного в Windows-1251 текста при установленной странице 1252 (или наоборот) и будут испорчены буквы, то хотя бы сохранят свой вид тире, кавычки-ёлочки, кривые апострофы и т.п. Знак евро «€», являющийся позднейшим добавлением в Windows, находится в Windows-1251 на 0x88 (136, \210
) в отличие от 0x80 (128, \200
) в 1252 и большинстве других страниц Windows.
Использование[править]
В Интернете[править]
Наличие в кодовой странице множества символов типографики (что не имеет места ни в «альтернативной» кодировке, ни в KOI8, ни тем более в ISO 8859-5) сделало весьма удобным представление свёрстанного кириллического текста в Windows-1251 независимо от операционной системы потребителя. Это обеспечило уверенное доминирование Windows-1251 в кириллическом секторе WWW на протяжение примерно двенадцати лет. При этом в электронной почте и сообщениях NNTP преобладала KOI8-R (и её модификации) ввиду особенностей передачи данных по некоторым каналам. С конца 2000-х годов главной кодировкой Интернета становится UTF-8, в том числе для кириллической письменности.
По тем же причинам, что и вышеназванные, Windows-1251 имела широкое использование в IRC и используется (в русскоязычной среде) до сих пор. Ограничения протокола делают нежелательным полный переход на UTF-8 (или какую-либо многобайтную кодировку вообще).
В Microsoft Windows[править]
Служила локализацией для использующих кириллицу славянских языков и некоторых других (перечислить) как до введения в Windows Юникода, так и после — ради поддержания приложений, работающих через старый 8-битный API. Информацию о кодовой странице можно найти в реестре в разделе «HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\Nls\CodePage\», ключах «1251» и (при наличии локали) «ACP».
В прочих контекстах[править]
Кроме использования кода 0xFF (255, \377
) для строчной буквы «я», нет противопоказаний для использования Windows-1251 в системах UNIX. Современные системы (большинство разновидностей GNU/Linux, FreeBSD и т.д.) позволяют без установки стороннего ПО собрать локаль с кодировкой CP1251.
История создания, варианты и модификации[править]
Ни CP866 (разновидность «альтернативной» кодировки), уже поддерживаемая ПО от Microsoft, ни KOI8-R разработчиков Windows не удовлетворили ввиду отсутствия многих полезных символов типографики. Их место во второй половине кодовых таблиц CP866 и KOI8-R занимает псевдографика, бесполезная в графической среде Windows. Как указано выше, расположение символов Windows-1251 обусловлено частичной совместимостью с Windows-1252, разработанной ранее.
В течение 1990-х годов и до 2002 года были разработаны несколько модификаций кодировки для поддержки алфавитов, не полностью покрываемых исходной кодовой страницей Windows-1251.
Интересные факты[править]
- Номера кодовых страниц Windows назначаются не в порядке создания. Кодировка из страницы 1252 присутствовала в ПО Windows изначально, а 1250 (центральноевропейская латиница) и 1251 появились позже — во время Windows 3.1.
Ссылки[править]
- http://dibr.nnov.ru/use012.html — версия истории создания Windows-1251, опубликованная в фидоэхе SU.LAN неким Igor V. Semenyuk.
- http://web.archive.org/web/20140606085903/http://msdn.microsoft.com/ru-RU/goglobal/cc305144.aspx
Кодировки символов | ||
---|---|---|
Основы | Алфавит • текст • набор символов • конверсия | |
Исторические кодировки | Докомп.: | семафорная (Макарова) • Морзе • Бодо • МТК-2 |
Комп.: | 6-битная • УПП • RADIX-50 • EBCDIC ( ДКОИ-8 ) • КОИ-7 • ISO 646 | |
современное 8-битное представление |
символы | ASCII ( управляющие • печатные ) |
8-битные код.стр. | ISO 8859 • кириллица (КОИ-8 • ГОСТ 19768-87 • MacCyrillic) | |
Windows | 1250 • 1251 (кир.) • 1252 • 1253 • 1254 • 1255 • 1256 • 1257 • 1258 • WGL4 | |
IBM & DOS | 437 • 850 • 852 • 855 • 866 «альт.» • МИК • НИИ ЭВМ | |
Многобайтные | Традиционные | DBCS ( GB 2312 ) • HTML |
Unicode | UTF • список символов (кириллица • латиница) | |
Связанные темы | интерфейс пользователя • раскладка клавиатуры • локаль • перевод строки • кракозябры • транслит • нестандартные шрифты |