![]() | |
MIME/IANA | IBM866 |
---|---|
Псевдоним(ы) | cp866, 866 [1] |
Язык(и) | Русский , болгарский ; Частичная поддержка: украинский , [a] белорусский [b] |
Стандарт | Стандарт кодирования WHATWG |
Классификация | Кодовая страница OEM , расширенный ASCII |
Расширяет | US-ASCII |
На основе | Альтернативная кодовая страница |
Другие связанные кодировки | (См. ниже) |
Кодовая страница 866 ( CCSID 866) [2] (CP 866, «DOS Cyrillic Russian») [3] — кодовая страница, используемая в DOS и OS/2 [4] в России для записи кириллицы . [5] [6] Она основана на «альтернативной кодировке» , разработанной в 1984 году в ИХНА АН СССР и опубликованной в 1986 году исследовательской группой Академии наук СССР. [7] Кодовая страница широко использовалась в эпоху DOS, поскольку она сохраняет все псевдографические символы кодовой страницы 437 (в отличие от « Основной кодовой страницы » или кодовой страницы 855) и поддерживает алфавитный порядок (хотя и несмежно) кириллических букв (в отличие от KOI8-R ). Первоначально эта кодировка была доступна только в русской версии MS-DOS 4.01 (1990), но с выходом MS-DOS 6.22 она стала доступна в любой языковой версии.
Стандарт кодировки WHATWG , определяющий кодировки символов, разрешенные в HTML5 , которые должны поддерживать совместимые браузеры, [8] включает кодовую страницу 866. [9] Это единственная однобайтовая кодировка, которая не названа частью ISO 8859 , специфической кодировкой Mac OS , специфической кодировкой Microsoft Windows ( Windows-874 или Windows-125x ) или вариантом KOI-8 . [9] Авторам новых страниц и разработчикам новых протоколов предписано использовать вместо этого UTF-8 . [10]
Две очень похожие, но не идентичные кодировки стандартизированы в ГОСТ Р 34.303-92 [11] как KOI-8 N1 и KOI-8 N2 (не путать с исходной KOI-8 ).
Каждый не-ASCII символ показан с его эквивалентной кодовой точкой Unicode . Первая половина (кодовые точки 0–127) этой таблицы такая же, как и у кодовой страницы 437 .
0 | 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | А | Б | С | Д | Э | Ф | |
0x | НУЛЕВОЙ | ☺ 263А | ☻ 263Б | ♥ 2665 | ♦ 2666 | ♣ 2663 | ♠ 2660 | • 2022 | ◘ 25D8 | ○ 25КБ | ◙ 25D9 | ♂ 2642 | ♀ 2640 | ♪ 266А | ♫ 266Б | ☼ 263С |
1x | ► 25BA | ◄ 25C4 | ↕ 2195 | ‼ 203С | ¶ 00B6 | § 00А7 | ▬ 25AC | ↨ 21А8 | ↑ 2191 | ↓ 2193 | → 2192 | ← 2190 | ∟ 221Ф | ↔ 2194 | ▲ 25Б2 | ▼ 25 г. до н.э. |
2x | СП | ! | " | # | $ | % | & | ' | ( | ) | * | + | , | - | . | / |
3x | 0 | 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | : | ; | < | = | > | ? |
4x | @ | А | Б | С | Д | Э | Ф | Г | ЧАС | я | Дж. | К | Л | М | Н | О |
5x | П | В | Р | С | Т | У | В | Вт | Х | И | З | [ | \ | ] | ^ | _ |
6x | ` | а | б | с | г | е | ф | г | час | я | дж | к | л | м | н | о |
7x | п | д | г | с | т | ты | в | ж | х | у | з | { | | | } | ~ | ⌂ 2302 |
8x | А 0410 | Б 0411 | В 0412 | Г 0413 | Д 0414 | Е 0415 | Ж 0416 | З 0417 | И 0418 | Й 0419 | К 041А | Л 041Б | М 041С | Н 041Д | О 041E | П 041Ф |
9x | Р 0420 | С 0421 | Т 0422 | У 0423 | Ф 0424 | Х 0425 | Ц 0426 | Ч 0427 | Ш 0428 | Щ 0429 | Ъ 042А | Ы 042Б | Ь 042C | Э 042Д | Ю 042E | Я 042F |
Топор | а 0430 | б 0431 | в 0432 | г 0433 | д 0434 | е 0435 | ж 0436 | з 0437 | и 0438 | © 0439 | к 043А | л 043Б | м 043С | в 043D | о 043E | п 043Ф |
Вх | ░ 2591 | ▒ 2592 | ▓ 2593 | │ 2502 | ┤ 2524 | ╡ 2561 | ╢ 2562 | ╖ 2556 | ╕ 2555 | ╣ 2563 | ║ 2551 | ╗ 2557 | ╝ 255D | ╜ 255С | ╛ 255Б | ┐ 2510 |
Сх | └ 2514 | ┴ 2534 | ┬ 252С | ├ 251С | ─ 2500 | ┼ 253С | ╞ 255E | ╟ 255F | ╚ 255А | ╔ 2554 | ╩ 2569 | ╦ 2566 | ╠ 2560 | ═ 2550 | ╬ 256С | ╧ 2567 |
Дкс | ╨ 2568 | ╤ 2564 | ╥ 2565 | ╙ 2559 | ╘ 2558 | ╒ 2552 | ╓ 2553 | ╫ 256Б | ╪ 256А | ┘ 2518 | ┌ 250С | █ 2588 | ▄ 2584 | ▌ 258С | ▐ 2590 | ▀ 2580 |
Бывший | р 0440 | с 0441 | т 0442 | у 0443 | ф 0444 | х 0445 | ц 0446 | ч 0447 | ш 0448 | № 0449 | ъ 044A | ы 044Б | ь 044C | э 044D | ю 044E | я 044F |
Фх | Ё 0401 | ё 0451 | Є 0404 | в 0454 | Ї 0407 | ї 0457 | Ў 040E | в 045E | ° 00B0 | ∙ 2219 | · 00B7 | √ 221А | № 2116 | ¤ 00А4 | ■ 25А0 | НБСП 00А0 |
Существовало несколько вариантов кодовой страницы, но различия в основном касались последних 16 кодовых позиций (240–255).
Оригинальная версия кодовой страницы Брябрина и др. (1986) [7] называется «Альтернативная кодировка» , чтобы отличать ее от «Основной кодировки» тех же авторов. Она поддерживает только русский и болгарский языки . Она в основном такая же, как кодовая страница 866, за исключением кодов F2 hex — F7 hex (которые кодовая страница 866 меняет на украинские и белорусские буквы) и кодов F8 hex — FB hex (где кодовая страница 866 соответствует кодовой странице 437 ) . Отличающаяся строка показана ниже.
0 | 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | А | Б | С | Д | Э | Ф | |
Фх | Ё 0401 | ё 0451 | 🮣 1FBA3 | 🮢 1FBA2 | 🮠 1FBA0 | 🮡 1FBA1 | → 2192 | ← 2190 | ↓ 2193 | ↑ 2191 | ÷ 00F7 | ± 00B1 | № 2116 | ¤ 00А4 | ■ 25А0 | НБСП 00А0 |
Неофициальный вариант с кодовыми точками 240–255, идентичный кодовой странице 437. Однако буква Ёё обычно размещается на 240 и 241. [18] Эта версия поддерживает только русский и болгарский языки . Отличающаяся строка показана ниже.
0 | 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | А | Б | С | Д | Э | Ф | |
Фх | Ё 0401 | ё 0451 | ≥ 2265 | ≤ 2264 | ⌠ 2320 | ⌡ 2321 | ÷ 00F7 | ≈ 2248 | ° 00B0 | ∙ 2219 | · 00B7 | √ 221А | ⁿ 207Ф | ² 00B2 | ■ 25А0 | НБСП 00А0 |
Стандарт ГОСТ Р 34.303-92 определяет два варианта: КОИ-8 N1 и КОИ-8 N2. Их не следует путать с кодировкой КОИ-8 , которой они не соответствуют.
KOI-8 N2 — более обширный вариант, соответствующий кодовой странице 866 и альтернативной кодовой странице, за исключением последней строки или палочки . [c] Для этой последней строки он поддерживает буквы для белорусского и украинского языков в дополнение к русскому, но в раскладке, не связанной с кодовой страницей 866 или 1125. Примечательно, что русская Ё / ё (которая не менялась между альтернативной кодовой страницей и кодовой страницей 866) также находится в другом месте. Последняя палочка KOI-8 N2 показана ниже. [11]
0 | 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | А | Б | С | Д | Э | Ф | |
Фх | ЗАСТЕНЧИВЫЙ | № 2116 | Ґ 0490 | ґ 0491 | Ё 0401 | ё 0451 | Є 0404 | в 0454 | І 0406 | и 0456 | Ї 0407 | ї 0457 | Ў 040E | в 045E | ■ 25А0 | НБСП 00А0 |
Другой вариант, KOI-8 N1, является подмножеством KOI-8 N2, в котором отсутствуют нерусские кириллические буквы и смешанные однострочные/двухстрочные символы-рисунки , оставляя их пустыми для дальнейшей интернационализации (сравните с кодовой страницей 850 ). Ниже показаны затронутые палочки . [11]
0 | 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | А | Б | С | Д | Э | Ф | |
Вх | ░ 2591 | ▒ 2592 | ▓ 2593 | │ 2502 | ┤ 2524 | ╣ 2563 | ║ 2551 | ╗ 2557 | ╝ 255D | ┐ 2510 | ||||||
Сх | └ 2514 | ┴ 2534 | ┬ 252С | ├ 251С | ─ 2500 | ┼ 253С | ╚ 255А | ╔ 2554 | ╩ 2569 | ╦ 2566 | ╠ 2560 | ═ 2550 | ╬ 256С | |||
Дкс | ┘ 2518 | ┌ 250С | █ 2588 | ▄ 2584 | ▌ 258С | ▐ 2590 | ▀ 2580 | |||||||||
Бывший | р 0440 | с 0441 | т 0442 | у 0443 | ф 0444 | х 0445 | ц 0446 | ч 0447 | ш 0448 | № 0449 | ъ 044A | ы 044Б | ь 044C | э 044D | ю 044E | я 044F |
Фх | ЗАСТЕНЧИВЫЙ | № 2116 | Ё 0401 | ё 0451 | ■ 25А0 | НБСП 00А0 |
Кодовая страница KBL , неофициально известная как кодовая страница 771, [19] является самой ранней кодировкой символов DOS для литовского языка. [20] Она в основном соответствует кодовой странице 866 и альтернативной кодовой странице, но заменяет последнюю строку и некоторые блочные символы буквами литовского алфавита, которые в противном случае не присутствуют в ASCII. Русские Ё / ё не поддерживаются, [20] аналогично KOI-7 .
Также существует модифицированная версия, кодовая страница 773, в которой кириллические буквы заменены латышскими и эстонскими буквами. [20]
0 | 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | А | Б | С | Д | Э | Ф | |
Дкс | ╨ 2568 | ╤ 2564 | ╥ 2565 | ╙ 2559 | ╘ 2558 | ╒ 2552 | ╓ 2553 | ╫ 256Б | ╪ 256А | ┘ 2518 | ┌ 250С | █ 2588 | А 0104 | № 0105 | Ч 010С | ч 010D |
Бывший | р 0440 | с 0441 | т 0442 | у 0443 | ф 0444 | х 0445 | ц 0446 | ч 0447 | ш 0448 | № 0449 | ъ 044A | ы 044Б | ь 044C | э 044D | ю 044E | я 044F |
Фх | К 0118 | к 0119 | Э 0116 | е 0117 | Į 012E | į 012F | Ш 0160 | № 0161 | Ų 0172 | ų 0173 | Ū 016A | ū 016B | Ž 017D | ž 017E | ■ 25А0 | НБСП 00А0 |
Литовский стандарт LST 1284:1993, известный как кодовая страница 1119 или неофициально как кодовая страница 772, [19] в основном соответствует «модифицированной» кодовой странице 866, за исключением добавления кавычек в последней строке и замены смешанных одинарных-двойных символов-рисунков литовскими буквами (сравните кодовую страницу 850 ). В отличие от KBL, русский Ё / ё сохранен.
Он сопровождает LST 1283 ( кодовая страница 774/1118 ), который кодирует дополнительные литовские буквы в тех же местах, что и LST 1284, но основан на кодовой странице 437. Позднее он был заменен LST 1590-1 (кодовая страница 775), [19] который кодирует эти литовские буквы в тех же местах, но не включает кириллические буквы, заменяя их латышскими и эстонскими буквами. [20]
0 | 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | А | Б | С | Д | Э | Ф | |
Вх | ░ 2591 | ▒ 2592 | ▓ 2593 | │ 2502 | ┤ 2524 | А 0104 | Ч 010С | К 0118 | Э 0116 | ╣ 2563 | ║ 2551 | ╗ 2557 | ╝ 255D | Į 012E | Ш 0160 | ┐ 2510 |
Сх | └ 2514 | ┴ 2534 | ┬ 252С | ├ 251С | ─ 2500 | ┼ 253С | Ų 0172 | Ū 016A | ╚ 255А | ╔ 2554 | ╩ 2569 | ╦ 2566 | ╠ 2560 | ═ 2550 | ╬ 256С | Ž 017D |
Дкс | № 0105 | ч 010D | к 0119 | е 0117 | į 012F | № 0161 | ų 0173 | ū 016B | ž 017E | ┘ 2518 | ┌ 250С | █ 2588 | ▄ 2584 | ▌ 258С | ▐ 2590 | ▀ 2580 |
Бывший | р 0440 | с 0441 | т 0442 | у 0443 | ф 0444 | х 0445 | ц 0446 | ч 0447 | ш 0448 | № 0449 | ъ 044A | ы 044Б | ь 044C | э 044D | ю 044E | я 044F |
Фх | Ё 0401 | ё 0451 | ≥ 2265 | ≤ 2264 | „ 201E | « 201С | ÷ 00F7 | ≈ 2248 | ° 00B0 | ∙ 2219 | · 00B7 | √ 221А | ⁿ 207Ф | ² 00B2 | ■ 25А0 | НБСП 00А0 |
Украинский стандарт RST 2018-91 обозначен IBM как Кодовая страница 1125 (CCSID 1125), [25] сокращенно CP1125, а также известен как CP866U, CP866NAV или RUSCII. [26] Он соответствует исходной Альтернативной кодовой странице для всех точек, за исключением F2 hex по F9 hex включительно, которые заменены украинскими буквами. [27] Кодовая страница/CCSID 1131 [28] [29] соответствует кодовой странице 866 для всех точек, за исключением F8 hex , F9 hex и FC hex по FE hex включительно, которые заменены отсутствующими украинскими и белорусскими буквами, в процессе вытесняя символ маркера (∙) из F9 hex в FE hex . [30] [31] Различающиеся строки показаны ниже.
0 | 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | А | Б | С | Д | Э | Ф | |
Фх | Ё 0401 | ё 0451 | Ґ 0490 | ґ 0491 | Є 0404 | в 0454 | І 0406 | и 0456 | Ї 0407 | ї 0457 | ÷ 00F7 | ± 00B1 | № 2116 | ¤ 00А4 | ■ 25А0 | НБСП 00А0 |
0 | 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | А | Б | С | Д | Э | Ф | |
Фх | Ё 0401 | ё 0451 | Є 0404 | в 0454 | Ї 0407 | ї 0457 | Ў 040E | в 045E | І 0406 | и 0456 | · 00B7 | ¤ 00А4 | Ґ 0490 | ґ 0491 | ∙ 2219 | НБСП 00А0 |
Также, так называемая кодовая страница CP 866ukr является модифицированной версией CP866 с заменой Ўў на Іі. В отличие от CP1125, она сохраняет полную совместимость украинских букв с CP866, хотя Ґґ отсутствует. Она не входит в стандартные дистрибутивы Windows, но некоторые пользователи устанавливают самодельный патч [38] , позволяющий использовать эту кодировку для работы в программах командной строки (типа FAR Manager ) с именами файлов, содержащими кириллическую Іі.
Кодовая страница FreeDOS 30040 представляет собой вариант кодовой страницы 866, в которой знак валюты (¤) в байте 0xFB заменяется на знак гривны (₴, U+20B4).
Кодовая страница FreeDOS 30039 — это вариант кодовой страницы 1125, который выполняет ту же замену.
Кодовая страница IBM/CCSID 808 является вариантом кодовой страницы/CCSID 866; со знаком евро (€, U+20AC) в позиции FD hex , заменяющим универсальный знак валюты (¤). [39] [40] [41]
Кодовая страница IBM/CCSID 848 является вариантом кодовой страницы/CCSID 1125 со знаком евро в шестнадцатеричном формате FD , заменяющим ¤. [42] [43] [44]
Кодовая страница IBM/CCSID 849 является вариантом кодовой страницы/CCSID 1131 со знаком евро в шестнадцатеричном формате FB , заменяющим ¤. [45] [46] [47]
Неофициальная модификация, используемая в программном обеспечении, разработанном Майклом Ленером и Питером Р. Чехом. Она заменяет три математических символа на каймы и знак раздела , которые обычно используются в русском языке. (Ленер и Чех создали ряд альтернативных наборов символов для других европейских языков, включая один на основе CWI-2 для венгерского языка , основанный на Каменицком для чешского и словацкого языка , мазовецкий вариант для польского языка и, по-видимому, уникальную кодировку для литовского языка . Измененная строка показана ниже.
0 | 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | А | Б | С | Д | Э | Ф | |
Фх | Ё 0401 | ё 0451 | Є 0404 | в 0454 | Ї 0407 | ї 0457 | Ў 040E | в 045E | » 00ББ | « 00АБ | · 00B7 | § 00А7 | № 2116 | ¤ 00А4 | ■ 25А0 | НБСП 00А0 |
Латышский вариант, поддерживаемый принтерами Star и FreeDOS, имеет кодовую страницу 3012 (раньше FreeDOS называл ее кодовой страницей 61282 ). Эта кодировка получила прозвище «RusLat». [48]
0 | 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | А | Б | С | Д | Э | Ф | |
Вх | ░ 2591 | ▒ 2592 | ▓ 2593 | │ 2502 | ┤ 2524 | А 0100 | ╢ 2562 | № 0146 | ╕ 2555 | ╣ 2563 | ║ 2551 | ╗ 2557 | ╝ 255D | О 014С | ╛ 255Б | ┐ 2510 |
Сх | └ 2514 | ┴ 2534 | ┬ 252С | ├ 251С | ─ 2500 | ┼ 253С | а 0101 | ╟ 255F | ╚ 255А | ╔ 2554 | ╩ 2569 | ╦ 2566 | ╠ 2560 | ═ 2550 | ╬ 256С | ╧ 2567 |
Дкс | Ш 0160 | ╤ 2564 | ч 010D | Ч 010С | ╘ 2558 | ╒ 2552 | г 0123 | И 012А | и 012Б | ┘ 2518 | ┌ 250С | █ 2588 | ▄ 2584 | ū 016B | Ū 016A | ▀ 2580 |
Бывший | р 0440 | с 0441 | т 0442 | у 0443 | ф 0444 | х 0445 | ц 0446 | ч 0447 | ш 0448 | № 0449 | ъ 044A | ы 044Б | ь 044C | э 044D | ю 044E | я 044F |
Фх | Э 0112 | е 0113 | Г 0122 | к 0137 | К 0136 | ļ 013C | Л 013Б | ž 017E | Ž 017D | ō 014D | · 00B7 | √ 221А | С 0145 | № 0161 | ■ 25А0 | НБСП 00А0 |
FreeDOS предоставляет дополнительные неофициальные расширения кодовой страницы 866 для различных неславянских языков: [49]
До того, как окончательная кодовая страница Microsoft для русской MS-DOS 4.01 была зарегистрирована в IBM Францем Рау из Microsoft как CP866 в январе 1990 года, черновые версии, разработанные Юрием Стариковым из Dialogue, все еще назывались кодовой страницей 900 внутри компании. Хотя документация была исправлена, чтобы отразить новое название перед выпуском продукта, эскизы более ранних черновых версий, все еще называвшихся кодовой страницей 900 и без украинских и белорусских букв, которые были добавлены осенью 1989 года, были опубликованы в российской прессе в 1990 году. [50] Кодовая страница 900 просочилась в дистрибутив русского файла информации о кодовой странице MS-DOS 5.0 LCD.CPI. [51]
Агенты пользователей должны поддерживать кодировки, определенные в стандарте кодировки WHATWG, включая, но не ограничиваясь […]