DKOI (Russian: ДКОИ, Двоичный Код Обработки Информации, "Binary Code for Information Processing") is an EBCDIC encoding for Russian Cyrillic. It is a Telegraphy-based encoding used in ES EVM mainframes. It has been defined by several standards: GOST 19768-74 / ST SEV 358–76, ST SEV 358-88 / GOST 19768–93, CSN 36 9103.

DKOI K1

In DKOI K1 (ДКОИ К1), each Cyrillic letter is given its own code point. Characters are shown with their equivalent Unicode codes. The dollar sign $ may be placed in code point 0x5B; in that case the currency sign ¤ is in code point 0xE1.

DKOI K1
0123456789ABCDEF
0xNULSOHSTXETXPFHTLCDELSMMVTFFCRSOSI
1xDLEDC1DC2DC3RES/ ENPNLBSILCANEMCCCU1IFSIGSIRSIUS/ ITB
2xDSSOSFSBYP/ INPLFETBESCSM/ SWCU2ENQACKBEL
3xSYNPNRSTUCEOTCU3DC4NAKSUB
4xSPNBSPё[.<(+!
5x&Ъ]¤/$*);^
6x-/Ё¦,%_>?
7xSHYюаб`:#@'="
8xцabcdefghiдефгхи
9xйjklmnopqrклмноп
Axя~stuvwxyzрстужв
BxьызшэщчъЮАБЦДЕФГ
Cx{ABCDEFGHIХИЙКЛМ
Dx}JKLMNOPQRНОПЯРС
Ex\¤STUVWXYZТУЖВЬЫ
Fx0123456789ЗШЭЩЧEO
Differences from Code page 500

DKOI K2

In DKOI K2 (ДКОИ К2), some Cyrillic letters (А, В, Е, К, М, Н, О, Р, С, Т, Х, а, е, о, р, с, у, х) are merged with visually identical Latin letters (A, B, E, K, M, H, O, P, C, T, X, a, e, o, p, c, y, x). Code points 0x5F and 0xA1 are negation ¬ and overline instead of ^ and ~. The dollar sign $ may be placed in code point 0x5B; in that case the currency sign ¤ is in code point 0xE1.

DKOI K2
0123456789ABCDEF
0xNULSOHSTXETXPFHTLCDELSMMVTFFCRSOSI
1xDLEDC1DC2DC3RES/ ENPNLBSILCANEMCCCU1IFSIGSIRSIUS/ ITB
2xDSSOSFSBYP/ INPLFETBESCSM/ SWCU2ENQACKBEL
3xSYNPNRSTUCEOTCU3DC4NAKSUB
4xSP[.<(+!
5x&Ъ]¤/$*);¬
6x-/¦,%_>?
7xюб`:#@'="
8xцabcdefghiдфги
9xйjklmnopqrклмнп
Axяstuvwxyzтжв
BxьызшэщчъЮБЦДФГ
Cx{ABCDEFGHIИЙЛ
Dx}JKLMNOPQRПЯ
Ex\¤STUVWXYZУЖЬЫ
Fx0123456789ЗШЭЩЧEO
Differences from DKOI K1

Code page 880

IBM code page 880 is mostly a superset of DKOI K1, adding support for Cyrillic letters not used in Russian but used in Serbian Cyrillic, Macedonian Cyrillic, Belarusian Cyrillic or Soviet-era Ukrainian Cyrillic (i.e. including the Ukrainian Ye but not the Ukrainian Ge). 0x6A is a continuous vertical bar (like in code page 38), rather than a broken vertical bar (like in code pages 37 and 500), and 0x5B is always a dollar sign rather than a universal currency sign. This matches the character repertoire of KOI8-E.

IBM code page 880
0123456789ABCDEF
0xNULSOHSTXETXSELHTRNLDELGESPSRPTVTFFCRSOSI
1xDLEDC1DC2DC3RES/ ENPNLBSPOCCANEMUBSCU1IFSIGSIRSIUS/ ITB
2xDSSOSFSWUSBYP/ INPLFETBESCSASFESM/ SWCSPMFAENQACKBEL
3xSYNIRPPTRNNBSEOTSBSITRFFCU3DC4NAKSUB
4xSPNBSPђѓёєѕіїј[.<(+!
5x&љњћќўџЪЂ]$*);^
6x-/ЃЁЄЅІЇЈЉ|,%_>?
7xЊЋЌSHYЎЏюаб`:#@'="
8xцabcdefghiдефгхи
9xйjklmnopqrклмноп
Axя~stuvwxyzрстужв
BxьызшэщчъЮАБЦДЕФГ
Cx{ABCDEFGHIХИЙКЛМ
Dx}JKLMNOPQRНОПЯРС
Ex\¤STUVWXYZТУЖВЬЫ
Fx0123456789ЗШЭЩЧEO
Differences from DKOI K1

Code page 1025

Code page 1025 is almost identical to code page 880, but the universal currency sign (¤) is replaced with a section sign (§), thus matching the character repertoire of ISO 8859-5.

Code page 410

Code page 410 differs from code pages 880 and 1025 by lacking braces, backtick and tilde, including exponents of 2 and 3 and the numeric space, and including both the section sign and the universal currency sign in different locations to code pages 880 and 1025.

IBM code page 410 (differences from code pages 880 and 1025)
0123456789ABCDEF
7xЊЋЌSHYЎЏюаб§:#@'="
Axя³stuvwxyzрстужв
BxьызшэщчъЮАБЦДЕФГ
Cx¤ABCDEFGHIХИЙКЛМ
Dx²JKLMNOPQRНОПЯРС
Ex\FSPSTUVWXYZТУЖВЬЫ
Differences from code pages 880 and 1025

Footnotes