Jüri Ratas

Кодовая таблица в варианте IBM (кодовая страница CP866)

Альтернати́вная кодиро́вка (альтернативная кодировка ГОСТ) — основанная на CP437 кодовая страница, где все специфические европейские символы в верхней половине (позиции 0x800xFF) кодовой таблицы заменены на кириллические буквы, а псевдографические символы оставлены нетронутыми. Это не портит вида программ, использующих псевдографику для отрисовки рамок, а также обеспечивает использование в них кириллицы. Недостатком данной кодировки является разрыв в порядке малых кириллических букв. Разработана вместе с основной кодировкой (с которой совпадает по набору символов) в середине 1980-х годов в Вычислительном центре Академии наук СССР, была названа и описана в статье в журнале «Микропроцессорные средства и системы»[1] и пользовалась большой популярностью среди советских пользователей ПК (в феврале 1989 года 85 % опрошенных заявили, что используют её)[2].

Альтернативная кодировка может использоваться как для русского и болгарского языков, так и для украинского (советского периода) и белорусского, поскольку включает буквы Є, Ї и Ў. Тем не менее, в ней нет кириллической буквы І (вместо неё применяли латинскую I), а также буквы Ґ, которая была упразднена в 1933 году и на момент создания кодировки отсутствовала в украинском алфавите (восстановлена в 1990 году).

Исторически существовало много вариантов альтернативной кодировки, но все различия, как правило, затрагивали только диапазон кодовых позиций 0xF00xFF.

Окончательным стандартом стала кодировка IBM CP866, поддержка которой была добавлена в операционной системе (ОС) MS-DOS версии 4.01[3] (только в локализованных и переведённых на русский язык выпусках) и повсеместно — в MS-DOS версии 6.22. В этой кодировке записываются имена файлов в системе FAT (и короткие имена в VFAT). Поныне является популярной стандартной кодировкой Microsoft в среде DOS и OS/2, используется в консоли русифицированных ОС семейства Windows NT. Вне среды MS-DOS в Microsoft Windows заменена стандартной кодировкой CP1251, а в ОС семейства Windows NT (Windows NT 4.0, Windows 2000, Windows XP, Windows Server 2003, Windows Vista, Windows Server 2008, Windows 7 и т. д.) — Юникодом в представлении UTF-16 (до Windows 2000 — UCS-2).

Два варианта альтернативной кодировки — КОИ-8 Н1 (базовый) и КОИ-8 Н2 (рабочий) — определены в российском ГОСТ Р 34.303—92[4]. Несмотря на сходство названий, они не имеют отношения к кодировке КОИ-8 по ГОСТ 19768—74, в настоящее время не определённой ни в одном из действующих ГОСТов.

Кодовые таблицы

Нижние половины (позиции 0x000x7F) кодовых таблиц не показаны, поскольку они полностью совпадают с CP437 (ASCII). Числа под символами обозначают их шестнадцатеричный код в Юникоде.

Версия ВЦ АН СССР

.0 .1 .2 .3 .4 .5 .6 .7 .8 .9 .A .B .C .D .E .F
8. А
0410
Б
0411
В
0412
Г
0413
Д
0414
Е
0415
Ж
0416
З
0417
И
0418
Й
0419
К
041A
Л
041B
М
041C
Н
041D
О
041E
П
041F
9. Р
0420
С
0421
Т
0422
У
0423
Ф
0424
Х
0425
Ц
0426
Ч
0427
Ш
0428
Щ
0429
Ъ
042A
Ы
042B
Ь
042C
Э
042D
Ю
042E
Я
042F
A. а
0430
б
0431
в
0432
г
0433
д
0434
е
0435
ж
0436
з
0437
и
0438
й
0439
к
043A
л
043B
м
043C
н
043D
о
043E
п
043F
B.
2591

2592

2593

2502

2524

2561

2562

2556

2555

2563

2551

2557

255D

255C

255B

2510
C.
2514

2534

252C

251C

2500

253C

255E

255F

255A

2554

2569

2566

2560

2550

256C

2567
D.
2568

2564

2565

2559

2558

2552

2553

256B

256A

2518

250C

2588

2584

258C

2590

2580
E. р
0440
с
0441
т
0442
у
0443
ф
0444
х
0445
ц
0446
ч
0447
ш
0448
щ
0449
ъ
044A
ы
044B
ь
044C
э
044D
ю
044E
я
044F
F. Ё
0401
ё
0451
🮣
1FBA3
🮢
1FBA2
🮠
1FBA0
🮡
1FBA1

2192

2190

2193

2191
÷
00F7
±
00B1

2116
¤
00A4

25A0
 
00A0

Производные варианты

(Показаны только те строки кодовых таблиц, которые отличаются от версии ВЦ АН СССР.)

Наиболее распространённый вариант до появления CP866, называемый также «модифицированной альтернативной кодировкой» (KOI8-R использует этот же набор символов):

.0 .1 .2 .3 .4 .5 .6 .7 .8 .9 .A .B .C .D .E .F
F. Ё
0401
ё
0451

2265

2264

2320

2321
÷
00F7

2248
°
00B0

2219
·
00B7

221A

207F
²
00B2

25A0
 
00A0

То же, но без буквы Ё (отличается от CP437 только заменой символов в диапазонах 0x800xAF и 0xE00xEF на русские буквы):

.0 .1 .2 .3 .4 .5 .6 .7 .8 .9 .A .B .C .D .E .F
F.
2261
±
00B1

2265

2264

2320

2321
÷
00F7

2248
°
00B0

2219
·
00B7

221A

207F
²
00B2

25A0
 
00A0

CP866 (вариант, утверждённый корпорацией IBM):

.0 .1 .2 .3 .4 .5 .6 .7 .8 .9 .A .B .C .D .E .F
F. Ё
0401
ё
0451
Є
0404
є
0454
Ї
0407
ї
0457
Ў
040E
ў
045E
°
00B0

2219
·
00B7

221A

2116
¤
00A4

25A0
 
00A0

CP866LV — кодировка, использовавшаяся в Латвии (Латвийской ССР), часть стандартных символов заменена на буквы латышского алфавита:

.0 .1 .2 .3 .4 .5 .6 .7 .8 .9 .A .B .C .D .E .F
B.
2591

2592

2593

2502

2524
Ā
0100

2562
ņ
0146

2555

2563

2551

2557

255D

255C

255B

2510
C.
2514

2534

252C

251C

2500

253C
ā
0101

255F

255A

2554

2569

2566

2560

2550

256C

2567
D. Š
0160

2564
č
010D
Č
010C

2558

2552
ģ
0123
Ī
012A
ī
012B

2518

250C

2588

2584
ū
016B
Ū
016A

2580
E. р
0440
с
0441
т
0442
у
0443
ф
0444
х
0445
ц
0446
ч
0447
ш
0448
щ
0449
ъ
044A
ы
044B
ь
044C
э
044D
ю
044E
я
044F
F. Ē
0112
ē
0113
Ģ
0122
ķ
0137
Ķ
0136
ļ
013C
Ļ
013B
ž
017E
Ž
017D

2219
·
00B7

221A
Ņ
0145
š
0161

25A0
 
00A0

RUSCII (CP866U, CP1125, GOST Ukrainian):

.0 .1 .2 .3 .4 .5 .6 .7 .8 .9 .A .B .C .D .E .F
F. Ё
0401
ё
0451
Ґ
0490
ґ
0491
Є
0404
є
0454
І
0406
і
0456
Ї
0407
ї
0457
·
00B7

221A

2116
¤
00A4

25A0
 
00A0

CP866.chuv — кодировка, использовавшаяся для отображения знаков чувашского алфавита:

.0 .1 .2 .3 .4 .5 .6 .7 .8 .9 .A .B .C .D .E .F
F. Ё
0401
ё
0451
Ӑ
04D0
ӑ
04D1
Ӗ
04D6
ӗ
04D7
Ҫ
04AA
ҫ
04AB
Ӳ
04F2
ӳ
04F3
·
00B7

221A

2116
¤
00A4

25A0
 
00A0

КОИ-8 Н2 — кодировка, определённая в ГОСТ Р 34.303—92[4] (собственно, так называемая «альтернативная кодировка ГОСТ»):

.0 .1 .2 .3 .4 .5 .6 .7 .8 .9 .A .B .C .D .E .F
F. ­
00AD

2116
Ґ
0490
ґ
0491
Ё
0401
ё
0451
Є
0404
є
0454
І
0406
і
0456
Ї
0407
ї
0457
Ў
040E
ў
045E

25A0
 
00A0

Примечания

  1. Брябрин В. М., Ландау И. Я., Неменман М. Е. О системе кодирования для персональных ЭВМ // Микропроцессорные средства и системы : журнал. — 1986. — № 4. — С. 61—63. Архивировано 8 июля 2018 года.
  2. Юрий Стариков. 30-летию Russian MS-DOS 4.01 посвящается. Дата обращения: 4 марта 2025. Архивировано 8 декабря 2024 года.
  3. Code Page 866 MS-DOS Cyrillic CIS 1 (англ.). Microsoft Developer Network. Дата обращения: 4 марта 2025. Архивировано 6 октября 2024 года.
  4. 1 2 ГОСТ Р 34.303—92 (ИСО 4873—86) «Информационная технология. Наборы 8-битных кодированных символов. 8-битный код обмена и обработки информации».

Ссылки

No tags for this post.