ДКОИ
Двои́чный код обрабо́тки информа́ции (сокр. ДКОИ) — семейство восьмибитных кодовых страниц, основанных на IBM EBCDIC и предназначенных для обработки информации с возможностью использования латинского и русского алфавитов на компьютерах серии ЕС ЭВМ[1]. ДКОИ был стандартизован в паре с КОИ-8 в ГОСТ 19768—74[2], заменённом (в части ДКОИ) на ГОСТ Р 34.304—92[3], который, в свою очередь, заменён на ГОСТ 19768—93[4], действующий по сей день.
Стандарт определяет два варианта ДКОИ — К1 и К2. Во втором варианте русские буквы, совпадающие по начертанию с латинскими (А, В, Е, К, М, Н, О, Р, С, Т, Х, а, е, о, р, с, у, х), отсутствуют — вместо них предполагается использовать аналогичные им латинские (в таблице русские буквы, отсутствующие в варианте К2, помечены жёлтым, остальные — зелёным).
Неалфавитный порядок следования русских букв в кодовой таблице ДКОИ унаследовал от телетайпного кода МТК-2. Изначально в ДКОИ отсутствовали обе (прописная и строчная) буквы Ё и прописная буква Ъ. Они были добавлены в ГОСТ Р 34.304—92 (Ё — только в варианте К1).
В варианте К2 используется знак отрицания (¬) и черта сверху (‾) вместо циркумфлекса (^) и тильды (~) (позиции 0x5F
и 0xA1
).
IBM 880
[править | править код]В обоих вариантах (как К1, так и К2) допускается размещение знака доллара ($) в позиции 0x5B
, в этом случае знак валюты (¤) помещается в позицию 0xE1
. При такой модификации вариант К1 становится совместим с кодировкой IBM EBCDIC 880, в основном представляющей собой надмножество ДКОИ К1 с добавлением поддержки кириллических букв, отсутствующих в русском алфавите, но имеющихся в украинском (советского периода), белорусском, сербском и македонском алфавитах. Кроме того, 0x6A
в кодировке 880 — непрерывная вертикальная черта (|) (как в кодовой странице 38), а не разорванная вертикальная черта (¦) (как в кодовых страницах 37 и 500).
Кодовая таблица
[править | править код].0 | .1 | .2 | .3 | .4 | .5 | .6 | .7 | .8 | .9 | .A | .B | .C | .D | .E | .F | |
---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
0. | NUL 0000 |
SOH 0001 |
STX 0002 |
ETX 0003 |
PF 009C |
HT 0009 |
LC 0086 |
DEL 007F |
GE 0097 |
RLF 008D |
SMM 008E |
VT 000B |
FF 000C |
CR 000D |
SO 000E |
SI 000F |
1. | DLE 0010 |
DC1 0011 |
DC2 0012 |
TM 0013 |
RES 009D |
NL 0085 |
BS 0008 |
IL 0087 |
CAN 0018 |
EM 0019 |
CC 0092 |
CU1 008F |
IFS 001C |
IGS 001D |
IRS 001E |
IUS 001F |
2. | DS 0080 |
SOS 0081 |
FS 0082 |
BYP 0084 |
LF 000A |
ETB 0017 |
ESC 001B |
SM 008A |
CU2 008B |
ENQ 0005 |
ACK 0006 |
BEL 0007 | ||||
3. | SYN 0016 |
PN 0094 |
RS 0095 |
UC 0096 |
EOT 0004 |
CU3 009B |
DC4 0014 |
NAK 0015 |
SUB 001A | |||||||
4. | SP 0020 |
[ 005B |
. 002E |
< 003C |
( 0028 |
+ 002B |
! 0021 | |||||||||
5. | & 0026 |
] 005D |
¤ 00A4 |
* 002A |
) 0029 |
; 003B |
¬ 00AC | |||||||||
6. | - 002D |
/ 002F |
| 007C |
, 002C |
% 0025 |
_ 005F |
> 003E |
? 003F | ||||||||
7. | ю 044E |
а 0430 |
б 0431 |
` 0060 |
: 003A |
# 0023 |
@ 0040 |
' 0027 |
= 003D |
" 0022 | ||||||
8. | ц 0446 |
a 0061 |
b 0062 |
c 0063 |
d 0064 |
e 0065 |
f 0066 |
g 0067 |
h 0068 |
i 0069 |
д 0434 |
е 0435 |
ф 0444 |
г 0433 |
х 0445 |
и 0438 |
9. | й 0439 |
j 006A |
k 006B |
l 006C |
m 006D |
n 006E |
o 006F |
p 0070 |
q 0071 |
r 0072 |
к 043A |
л 043B |
м 043C |
н 043D |
о 043E |
п 043F |
A. | я 044F |
~ 007E |
s 0073 |
t 0074 |
u 0075 |
v 0076 |
w 0077 |
x 0078 |
y 0079 |
z 007A |
р 0440 |
с 0441 |
т 0442 |
у 0443 |
ж 0436 |
в 0432 |
B. | ь 044C |
ы 044B |
з 0437 |
ш 0448 |
э 044D |
щ 0449 |
ч 0447 |
ъ 044A |
Ю 042E |
А 0410 |
Б 0411 |
Ц 0426 |
Д 0414 |
Е 0415 |
Ф 0424 |
Г 0413 |
C. | { 007B |
A 0041 |
B 0042 |
C 0043 |
D 0044 |
E 0045 |
F 0046 |
G 0047 |
H 0048 |
I 0049 |
Х 0425 |
И 0418 |
Й 0419 |
К 041A |
Л 041B |
М 041C |
D. | } 007D |
J 004A |
K 004B |
L 004C |
M 004D |
N 004E |
O 004F |
P 0050 |
Q 0051 |
R 0052 |
Н 041D |
О 041E |
П 041F |
Я 042F |
Р 0420 |
С 0421 |
E. | \ 005C |
S 0053 |
T 0054 |
U 0055 |
V 0056 |
W 0057 |
X 0058 |
Y 0059 |
Z 005A |
Т 0422 |
У 0423 |
Ж 0416 |
В 0412 |
Ь 042C |
Ы 042B | |
F. | 0 0030 |
1 0031 |
2 0032 |
3 0033 |
4 0034 |
5 0035 |
6 0036 |
7 0037 |
8 0038 |
9 0039 |
З 0417 |
Ш 0428 |
Э 042D |
Щ 0429 |
Ч 0427 |
EO 009F |
Совмещение букв
[править | править код]Совмещённые русские и латинские буквы выделены жёлтым.
Буква | Код | Буква | Код |
---|---|---|---|
А | 0xC1
|
а | 0x81
|
Б | 0xBA
|
б | 0x78
|
В | 0xC2
|
в | 0xAF
|
Г | 0xBF
|
г | 0x8D
|
Д | 0xBC
|
д | 0x8A
|
Е | 0xC5
|
е | 0x85
|
Ж | 0xEC
|
ж | 0xAE
|
З | 0xFA
|
з | 0xB2
|
И | 0xCB
|
и | 0x8F
|
Й | 0xCC
|
й | 0x90
|
К | 0xD2
|
к | 0x9A
|
Л | 0xCE
|
л | 0x9B
|
М | 0xD4
|
м | 0x9C
|
Н | 0xC8
|
н | 0x9D
|
О | 0xD6
|
о | 0x96
|
П | 0xDC
|
п | 0x9F
|
Р | 0xD7
|
р | 0x97
|
С | 0xC3
|
с | 0x83
|
Т | 0xE3
|
т | 0xAC
|
У | 0xEB
|
у | 0xA8
|
Ф | 0xBE
|
ф | 0x8C
|
Х | 0xE7
|
х | 0xA7
|
Ц | 0xBB
|
ц | 0x80
|
Ч | 0xFE
|
ч | 0xB6
|
Ш | 0xFB
|
ш | 0xB3
|
Щ | 0xFD
|
щ | 0xB5
|
Ъ | ъ | 0xB7
| |
Ы | 0xEF
|
ы | 0xB1
|
Ь | 0xEE
|
ь | 0xB0
|
Э | 0xFC
|
э | 0xB4
|
Ю | 0xB8
|
ю | 0x76
|
Я | 0xDD
|
я | 0xA0
|
Использование ДКОИ
[править | править код]ДКОИ использовался в языках программирования:
Примечания
[править | править код]- ↑ Вострикова З. П.. Программирование на языке ассемблера ЕС ЭВМ . — М.: Наука, 1981. — С. 291. — 304 с.: ил. — 100 000 экз.
- ↑ ГОСТ 19768—74 «Машины вычислительные и системы обработки данных. Коды 8-битные для обмена и обработки информации» // Машины вычислительные, системы обработки и аппаратура передачи данных. ГОСТ 19767—74 — ГОСТ 19769—74, ГОСТ 13052—74 . — М.: Изд-во стандартов, 1974. — С. 26—34. — 43 с. — (Государственные стандарты СССР). — 10 000 экз. Архивировано 12 апреля 2025 года.
- ↑ ГОСТ Р 34.304—92 «Информационная технология. Наборы 8-битных кодированных символов. Двоичный код обработки информации» . Дата обращения: 14 апреля 2025. Архивировано 14 апреля 2025 года.
- ↑ ГОСТ 19768—93 «Информационная технология. Наборы 8-битных кодированных символов. Двоичный код обработки информации».