KOI8-RU

In this article, we delve into the interesting topic of KOI8-RU. Along these lines, we will explore the different aspects that make KOI8-RU a topic of relevance and interest today. From its origin and evolution, to its impact on society, we will thoroughly examine every facet of KOI8-RU. Likewise, we will analyze the implications that KOI8-RU has in various areas, highlighting its importance in the academic, cultural, social and technological fields. Through this exploration, we will seek to shed light on the nuances and complexities that characterize KOI8-RU, offering a comprehensive vision that allows the reader to understand its scope and relevance in the current context.

KOI8-RU
Language(s)Belarusian, Ukrainian, Russian, Bulgarian
Classification8-bit KOI, extended ASCII
ExtendsKOI8-B
Based onKOI8-U, KOI8-R
Other related encoding(s)KOI8-E, KOI8-F

KOI8-RU is an 8-bit character encoding, designed to cover Russian, Ukrainian, and Belarusian which use a Cyrillic alphabet. It is closely related to KOI8-R, which covers Russian and Bulgarian, but replaces ten box drawing characters with five Ukrainian and Belarusian letters Ґ, Є, І, Ї, and Ў in both upper case and lower case. It is even more closely related to KOI8-U, which does not include Ў but otherwise makes the same letter replacements. The additional letter allocations are matched by KOI8-E, except for Ґ which is added to KOI8-F.

In IBM, KOI8-RU is assigned code page/CCSID 1167.

KOI8 remains much more commonly used than ISO 8859-5, which never really caught on. Another common Cyrillic character encoding is Windows-1251. In the future, both may eventually give way to Unicode.

KOI8 stands for Kod obmena informatsiey, 8 bit (Russian: Код обмена информацией, 8 бит) which means "Code for Information Exchange, 8 bit".

The KOI8 character sets have the property that the Russian Cyrillic letters are in pseudo-Roman order rather than the natural Cyrillic alphabetical order as in ISO 8859-5. Although this may seem unnatural, it has the useful property that if the eighth bit is stripped, the text can still be read (or at least deciphered) in case-reversed transliteration on an ordinary ASCII terminal. For instance, "Русский Текст" in KOI8-RU becomes rUSSKIJ tEKST ("Russian Text") if the 8th bit is stripped.

Character set

The following table shows the KOI8-RU encoding. Each character is shown with its equivalent Unicode code point.

KOI8-RU
0 1 2 3 4 5 6 7 8 9 A B C D E F
0x
1x
2x  SP  ! " # $ % & ' ( ) * + , - . /
3x 0 1 2 3 4 5 6 7 8 9 : ; < = > ?
4x @ A B C D E F G H I J K L M N O
5x P Q R S T U V W X Y Z [ \ ] ^ _
6x ` a b c d e f g h i j k l m n o
7x p q r s t u v w x y z { | } ~
8x
2500

2502

250C

2510

2514

2518

251C

2524

252C

2534

253C

2580

2584

2588

258C

2590
9x
2591

2592

2593

201C

25A0

2219

201D

2014

2116

2122
NBSP »
00BB
®
00AE
«
00AB
·
00B7
¤
00A4
Ax
2550

2551

2552
ё
0451
є
0454

2554
і
0456
ї
0457

2557

2558

2559

255A

255B
ґ
0491
ў
045E

255E
Bx
255F

2560

2561
Ё
0401
Є
0404

2563
І
0406
Ї
0407

2566

2567

2568

2569

256A
Ґ
0490
Ў
040E
©
00A9
Cx ю
044E
а
0430
б
0431
ц
0446
д
0434
е
0435
ф
0444
г
0433
х
0445
и
0438
й
0439
к
043A
л
043B
м
043C
н
043D
о
043E
Dx п
043F
я
044F
р
0440
с
0441
т
0442
у
0443
ж
0436
в
0432
ь
044C
ы
044B
з
0437
ш
0448
э
044D
щ
0449
ч
0447
ъ
044A
Ex Ю
042E
А
0410
Б
0411
Ц
0426
Д
0414
Е
0415
Ф
0424
Г
0413
Х
0425
И
0418
Й
0419
К
041A
Л
041B
М
041C
Н
041D
О
041E
Fx П
041F
Я
042F
Р
0420
С
0421
Т
0422
У
0423
Ж
0416
В
0412
Ь
042C
Ы
042B
З
0417
Ш
0428
Э
042D
Щ
0429
Ч
0427
Ъ
042A
  Differences from KOI8-R
  1. ^ a b c Changed relative to KOI8-R to match Windows-1251.
  2. ^ a b c d e f g h Changed relative to KOI8-R to match KOI8-U.
  3. ^ a b c d e f g h Changed relative to KOI8-R to match KOI8-E.

Although RFC 2319 says that character 0x95 should be U+2219 (∙), it may also be U+2022 (•) to match the bullet character in Windows-1251.

Some references have a typo and incorrectly state that character 0xB4 is U+0403, rather than the correct U+0404. This typo is present in Appendix A of RFC 2319 (but the table in the main text of the RFC gives the correct mapping).

See also

References

  1. ^ "Code page 1167 information document". Archived from the original on 2017-01-16.
  2. ^ "CCSID 1167 information document". Archived from the original on 2016-03-27.
  3. ^ Leisher, Mark (1999-12-20), KOI8-RU Belarusian/Ukrainian Cyrillic to Unicode 2.1 mapping table, KOI8RU.TXT
  4. ^ Code Page CPGID 01167 (pdf) (PDF), IBM
  5. ^ Code Page CPGID 01167 (txt), IBM

External links