KOI-7
KOI-7 (КОИ-7) is a 7-bit character encoding, designed to cover Russian, which uses the Cyrillic alphabet.
Kermit | SHORT-KOI |
---|---|
Alias(es) | KOI-7 N2, ВКД |
Language(s) | Russian |
Standard | GOST 13052, GOST 27463 |
Classification | 7-bit KOI encoding |
Preceded by | MTK-2 |
Succeeded by | KOI-8 |
Other related encoding(s) | YUSCII, ISO 646 |
MIME / IANA | KOI7-switched |
---|---|
Alias(es) | csKOI7switched |
Language(s) | Russian |
Standard | GOST 13052, GOST 27463 |
Classification | 7-bit stateful KOI encoding |
Transforms / Encodes | ISO 646:IRV (shift-in) KOI-7 N1 (shift-out) |
Preceded by | MTK-2 |
Succeeded by | KOI-8 |
Other related encoding(s) | YUSCII |
In Russian, KOI-7 stands for Kod Obmena Informatsiey, 7 bit (Код Обмена Информацией, 7 бит) which means "Code for Information Exchange, 7 bit".[1]
It was first standardized in GOST 13052-67 (with the 2nd revision GOST 13052-74 / ST SEV 356-76) and GOST 27463-87 / ST SEV 356-86.
Shift Out (SO) and Shift In (SI) control characters are used in KOI-7, where SO starts printing Russian letters (KOI-7 N1), and SI starts printing Latin letters again (KOI-7 N0), or for lowercase and uppercase switching. This version is also known as KOI7-switched aka csKOI7switched.[2][3]
On ISO 2022 compatible computer terminals KOI7-switched can be activated by the escape sequence ESC ( @ ESC ) N LS0
.[2]
KOI-7 was used on machines like the SM EVM (СМ ЭВМ) and DVK (ДВК); KOI-7 N2 was utilized in the machine-language of the Электроника Д3-28 (Elektronika D3-28) as four-digit hexadecimal code, БЭСМ-6 (BESM-6), where it was called ВКД, (internal data code). The encodings were also used on RSX-11, RT-11 and similar systems.[4]
KOI-7 N0
KOI-7 N0[2] (КОИ-7 Н0[1]) is identical to the IRV set in ISO 646:1967.[2] Compared to US-ASCII, the dollar sign ("$") at code point 24 (hex) was replaced by the universal currency sign "¤", but this was not maintained in all cases, in particular not after the fall of the Iron Curtain. Likewise, the IRV set in ISO/IEC 646:1991 also changed the character back to a dollar sign.
_0 | _1 | _2 | _3 | _4 | _5 | _6 | _7 | _8 | _9 | _A | _B | _C | _D | _E | _F | |
---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
0_ 0 |
NUL 0000 |
SOH 0001 |
STX 0002 |
ETX 0003 |
EOT 0004 |
ENQ 0005 |
ACK 0006 |
BEL 0007 |
BS 0008 |
HT 0009 |
LF 000A |
VT 000B |
FF 000C |
CR 000D |
SO 000E |
SI 000F |
1_ 16 |
DLE 0010 |
DC1 0011 |
DC2 0012 |
DC3 0013 |
DC4 0014 |
NAK 0015 |
SYN 0016 |
ETB 0017 |
CAN 0018 |
EM 0019 |
SUB 001A |
ESC 001B |
FS 001C |
GS 001D |
RS 001E |
US 001F |
2_ 32 |
SP 0020 |
! 0021 |
" 0022 |
# 0023 |
¤/$ 00A4/0024 |
% 0025 |
& 0026 |
' 0027 |
( 0028 |
) 0029 |
* 002A |
+ 002B |
, 002C |
- 002D |
. 002E |
/ 002F |
3_ 48 |
0 0030 |
1 0031 |
2 0032 |
3 0033 |
4 0034 |
5 0035 |
6 0036 |
7 0037 |
8 0038 |
9 0039 |
: 003A |
; 003B |
< 003C |
= 003D |
> 003E |
? 003F |
4_ 64 |
@ 0040 |
A 0041 |
B 0042 |
C 0043 |
D 0044 |
E 0045 |
F 0046 |
G 0047 |
H 0048 |
I 0049 |
J 004A |
K 004B |
L 004C |
M 004D |
N 004E |
O 004F |
5_ 80 |
P 0050 |
Q 0051 |
R 0052 |
S 0053 |
T 0054 |
U 0055 |
V 0056 |
W 0057 |
X 0058 |
Y 0059 |
Z 005A |
[ 005B |
\ 005C |
] 005D |
^ 005E |
_ 005F |
6_ 96 |
` 0060 |
a 0061 |
b 0062 |
c 0063 |
d 0064 |
e 0065 |
f 0066 |
g 0067 |
h 0068 |
i 0069 |
j 006A |
k 006B |
l 006C |
m 006D |
n 006E |
o 006F |
7_ 112 |
p 0070 |
q 0071 |
r 0072 |
s 0073 |
t 0074 |
u 0075 |
v 0076 |
w 0077 |
x 0078 |
y 0079 |
z 007A |
{ 007B |
| 007C |
} 007D |
~ 007E |
DEL 007F |
Letter Number Punctuation Symbol Other Undefined
KOI-7 N1
KOI-7 N1 (КОИ-7 Н1[1]) was first standardized in GOST 13052-67,[5][6][7] and later also in ISO 5427.[2] It is sometimes referred to as "koi-0" as well.[6]
Compared to ASCII and ISO 646 uppercase and lowercase letters are swapped in order to make it easier to recognize Russian text when presented using ASCII.[6]
To trim the alphabet into chunks of 32 characters the dotted Ё/ë was dropped.[6] In order to avoid conflicts with ASCII's and ISO 646's definition as DEL and its usage as EOF marker (-1) in some systems, it dropped the "CAPITAL HARD SIGN" Ъ that would have naturally resided at this location.[6]
In a Bulgarian variant the unnecessary Russian "CAPITAL YERY" Ы at code point 121 was replaced by the "CAPITAL HARD SIGN" Ъ.[6]
_0 | _1 | _2 | _3 | _4 | _5 | _6 | _7 | _8 | _9 | _A | _B | _C | _D | _E | _F | |
---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
0_ 0 |
NUL 0000 |
SOH 0001 |
STX 0002 |
ETX 0003 |
EOT 0004 |
ENQ 0005 |
ACK 0006 |
BEL 0007 |
BS 0008 |
HT 0009 |
LF 000A |
VT 000B |
FF 000C |
CR 000D |
SO 000E |
SI 000F |
1_ 16 |
DLE 0010 |
DC1 0011 |
DC2 0012 |
DC3 0013 |
DC4 0014 |
NAK 0015 |
SYN 0016 |
ETB 0017 |
CAN 0018 |
EM 0019 |
SUB 001A |
ESC 001B |
FS 001C |
GS 001D |
RS 001E |
US 001F |
2_ 32 |
SP 0020 |
! 0021 |
" 0022 |
# 0023 |
¤/$ 00A4/0024 |
% 0025 |
& 0026 |
' 0027 |
( 0028 |
) 0029 |
* 002A |
+ 002B |
, 002C |
- 002D |
. 002E |
/ 002F |
3_ 48 |
0 0030 |
1 0031 |
2 0032 |
3 0033 |
4 0034 |
5 0035 |
6 0036 |
7 0037 |
8 0038 |
9 0039 |
: 003A |
; 003B |
< 003C |
= 003D |
> 003E |
? 003F |
4_ 64 |
ю 044E |
а 0430 |
б 0431 |
ц 0446 |
д 0434 |
е 0435 |
ф 0444 |
г 0433 |
х 0445 |
и 0438 |
й 0439 |
к 043A |
л 043B |
м 043C |
н 043D |
о 043E |
5_ 80 |
п 043F |
я 044F |
р 0440 |
с 0441 |
т 0442 |
у 0443 |
ж 0436 |
в 0432 |
ь 044C |
ы 044B |
з 0437 |
ш 0448 |
э 044D |
щ 0449 |
ч 0447 |
ъ 044A |
6_ 96 |
Ю 042E |
А 0410 |
Б 0411 |
Ц 0426 |
Д 0414 |
Е 0415 |
Ф 0424 |
Г 0413 |
Х 0425 |
И 0418 |
Й 0419 |
К 041A |
Л 041B |
М 041C |
Н 041D |
О 041E |
7_ 112 |
П 041F |
Я 042F |
Р 0420 |
С 0421 |
Т 0422 |
У 0423 |
Ж 0416 |
В 0412 |
Ь 042C |
Ы/Ъ 042B/042A |
З 0417 |
Ш 0428 |
Э 042D |
Щ 0429 |
Ч 0427 |
DEL 007F |
Letter Number Punctuation Symbol Other Undefined
KOI-7 N2
KOI-7 N2 (КОИ-7 Н2[1]), like KOI-7 N1, was also standardized in GOST 13052-67.[7]
Kermit names it SHORT-KOI / short-koi.[8][9]
_0 | _1 | _2 | _3 | _4 | _5 | _6 | _7 | _8 | _9 | _A | _B | _C | _D | _E | _F | |
---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
0_ 0 |
NUL 0000 |
SOH 0001 |
STX 0002 |
ETX 0003 |
EOT 0004 |
ENQ 0005 |
ACK 0006 |
BEL 0007 |
BS 0008 |
HT 0009 |
LF 000A |
VT 000B |
FF 000C |
CR 000D |
SO 000E |
SI 000F |
1_ 16 |
DLE 0010 |
DC1 0011 |
DC2 0012 |
DC3 0013 |
DC4 0014 |
NAK 0015 |
SYN 0016 |
ETB 0017 |
CAN 0018 |
EM 0019 |
SUB 001A |
ESC 001B |
FS 001C |
GS 001D |
RS 001E |
US 001F |
2_ 32 |
SP 0020 |
! 0021 |
" 0022 |
# 0023 |
¤/$ 00A4/0024 |
% 0025 |
& 0026 |
' 0027 |
( 0028 |
) 0029 |
* 002A |
+ 002B |
, 002C |
- 002D |
. 002E |
/ 002F |
3_ 48 |
0 0030 |
1 0031 |
2 0032 |
3 0033 |
4 0034 |
5 0035 |
6 0036 |
7 0037 |
8 0038 |
9 0039 |
: 003A |
; 003B |
< 003C |
= 003D |
> 003E |
? 003F |
4_ 64 |
@ 0040 |
A 0041 |
B 0042 |
C 0043 |
D 0044 |
E 0045 |
F 0046 |
G 0047 |
H 0048 |
I 0049 |
J 004A |
K 004B |
L 004C |
M 004D |
N 004E |
O 004F |
5_ 80 |
P 0050 |
Q 0051 |
R 0052 |
S 0053 |
T 0054 |
U 0055 |
V 0056 |
W 0057 |
X 0058 |
Y 0059 |
Z 005A |
[ 005B |
\ 005C |
] 005D |
↑/^ 2191/005E |
_ 005F |
6_ 96 |
Ю 042E |
А 0410 |
Б 0411 |
Ц 0426 |
Д 0414 |
Е 0415 |
Ф 0424 |
Г 0413 |
Х 0425 |
И 0418 |
Й 0419 |
К 041A |
Л 041B |
М 041C |
Н 041D |
О 041E |
7_ 112 |
П 041F |
Я 042F |
Р 0420 |
С 0421 |
Т 0422 |
У 0423 |
Ж 0416 |
В 0412 |
Ь 042C |
Ы 042B |
З 0417 |
Ш 0428 |
Э 042D |
Щ 0429 |
Ч 0427 |
DEL 007F |
Letter Number Punctuation Symbol Other Undefined
See also
References
- ГОСТ 27463-87. Системы обработки информации. 7-битные кодированные наборы символов (с Изменением N 1) [GOST 27463-87. Information processing systems. 7-bit coded character sets] (in Russian). Госстандарт СССР. 1987-10-29. Archived from the original on 2016-12-03. Retrieved 2016-12-02.
- Sokolov, Michael (2004-01-23). "Charset name: KOI7-switched". International Free Computing Task Force (IFCTF). Archived from the original on 2016-12-03. Retrieved 2016-12-02.
- Freed, Ned; Dürst, Martin, eds. (2013-12-20). "Character Sets". RFC2978. Archived from the original on 2016-12-03. Retrieved 2016-12-03.
- Nechayev, Valentin (2013) [2001]. "Review of 8-bit Cyrillic encodings universe". Archived from the original on 2016-12-05. Retrieved 2016-12-05.
- Clews, John (1988). Language Automation Worldwide - The Development of Character Set Standards (1 ed.). Sesame Computer Projects. ISBN 1-87009501-4.
- Czyborra, Roman (1998-11-30) [1998-05-25]. "The Cyrillic Charset Soup". Archived from the original on 2016-12-03. Retrieved 2016-12-03.
- Hohlov, Yu. E. "Cyrillic Information Representation in Electronic Form - Character Set (Code Page) Tables". Archived from the original on 2016-12-05. Retrieved 2016-12-05.
- da Cruz, Frank (2010-04-02). "Kermit and MIME Character-Set Names". The Kermit Project. Columbia University, New York, USA. Archived from the original on 2016-12-03. Retrieved 2016-12-02.
- "SHORT KOI (KOI-7)". Kermit. Columbia University. Retrieved 2020-06-24.
Further reading
- Kornai, Andras; Birnbaum, David J.; da Cruz, Frank; Davis, Bur; Fowler, George; Paine, Richard B.; Paperno, Slava; Simonsen, Keld J.; Thobe, Glenn E.; Vulis, Dimitri; van Wingen, Johan W. (1993-03-13). --> "CYRILLIC ENCODING FAQ Version 1.3" Check
|archive-url=
value (help). 1.3. Archived from the original on 2017-02-18. Retrieved 2020-06-24.