A | B | C | D | E | F | G | H | CH | I | J | K | L | M | N | O | P | Q | R | S | T | U | V | W | X | Y | Z | 0 | 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9
ISO/IEC 646:1991 Informační technologie – 7bitová znaková sada ISO pro výměnu informací (anglicky Information technology — ISO 7-bit coded character set for information interchange) je standard Mezinárodní organizace pro normalizaci (ISO), který od svého prvního vydání v roce 1972 definoval 7bitové kódování znaků, z něhož je odvozeno několik národních standardů. Tento standard byl také přijat organizací ECMA jako ECMA-6.
ISO/IEC 646 stanovuje, jaké znaky v kódování ASCII lze nahrazovat národními znaky při vytváření 7bitových národních kódování znaků. Zároveň definuje mezinárodní referenční verzi (anglicky International Reference Version, IRV), která je ve verzi ISO/IEC 646:1991 shodná s kódováním ASCII.
Podle ISO/IEC 646 větší část znaků tvoří základní znakovou sadu, která je neměnná (invariantní)[1]. Protože tato část ISO/IEC 646, která tvoří invariantní znakovou sadu sdílenou všemi zeměmi, definovala pouze znaky použité v základní abecedě ISO Latin, země, v nichž se používají jiné znaky, si musely vytvořit národní varianty ISO 646, aby byly schopné používat svá národní písma. Protože v té době se obecně nepoužívaly 8bitové bajty, národní znaky se musely vejít do rozsahu dostupného pomocí 7bitového kódování, což znamená, že některé znaky dostupné v ASCII v národních variantách ISO 646 nejsou k dispozici.
Historie
ISO/IEC 646 a jeho předchůdce ASCII (ANSI X3.4) do značné míry stanovily existující praxi při používání znakových kódování v odvětví telekomunikací.
Protože ASCII neobsahovalo znaky potřebné pro jiné jazyky než angličtinu, bylo vytvořeno několik národních variant, ve kterých jsou některé méně používané znaky nahrazeny znaky potřebnými v příslušném jazyce. Kvůli těmto rozdílům vznikla mezinárodní referenční verze ISO/IEC 646 (anglicky International Reference Version, IRV), která usilovala o omezení nahrazovaných znaků na stejné znaky ve všech variantách. Původní verze ISO 646 IRV se lišila od ASCII pouze nahrazením znaku s kódem 0024, který je v ASCII použit pro znak dolar za mezinárodní znak měny (¤). Poslední verze ISO 646:1991 z roku 1991 je také známá jako T.50 Mezinárodní referenční abeceda (anglicky International Reference Alphabet, IRA), dříve Mezinárodní abeceda č. 5 (anglicky International Alphabet No. 5, IA5). Tento standard umožňuje používat celkem 12 pozic pro národní znaky (2 alternativní grafické znaky a 10 národních znaků). Mezi těmito variantami je explicitně definováno ISO 646:1991 IRV (International Reference Version), které je identické s ASCII[2].
Řada standardů ISO 8859 používá 8bitová kódování, která nahrazují mezinárodní standard ISO 646 i jeho národní varianty rozšířením kódu o jeden bit, což poskytuje dalších 96 kódových pozic, takže nahrazování ASCII kódu není potřebné. Standard ISO 10646 vyvíjený v součinnosti s Unicode nahrazuje znakové sady ISO 646 a ISO 8859 jednotným kódováním používajícím 21bitové kódy.
Vliv ISO 646 je vidět ve Windows, v jejichž některých znakových sadách je znak zpětné lomítko nahrazen znakem ¥ nebo jinými znaky. Bez ohledu na to, že znak ¥ byl obsažen (na jiné pozici) už v původním kódování na počítačích IBM PC, existuje tolik textů (v Japonštině), které pro znak ¥ používají jí kód 5C16, že na této pozici mají znak ¥ i v některé moderní fonty pro Windows. Dalším dědictvím je existence trojznaků (anglicky trigraphs) v programovacím jazyce C.
Rozložení znaků
Následující tabulka ukazuje znakovou sadu ISO/IEC 646. U každého znaku je uveden jeho šestnáctkový a desítkový kód. Šedě jsou vyznačena políčka, jejichž reprezentace se v různých zemích liší. Tato políčka jsou podrobněji rozebrána v další tabulce.
_0 | _1 | _2 | _3 | _4 | _5 | _6 | _7 | _8 | _9 | _A | _B | _C | _D | _E | _F | |
---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
0_ |
NUL 0000 0 |
SOH 0001 1 |
STX 0002 2 |
ETX 0003 3 |
EOT 0004 4 |
ENQ 0005 5 |
ACK 0006 6 |
BEL 0007 7 |
BS 0008 8 |
HT 0009 9 |
LF 000A 10 |
VT 000B 11 |
FF 000C 12 |
CR 000D 13 |
SO 000E 14 |
SI 000F 15 |
1_ |
DLE 0010 16 |
DC1 0011 17 |
DC2 0012 18 |
DC3 0013 19 |
DC4 0014 20 |
NAK 0015 21 |
SYN 0016 22 |
ETB 0017 23 |
CAN 0018 24 |
EM 0019 25 |
SUB 001A 26 |
ESC 001B 27 |
FS 001C 28 |
GS 001D 29 |
RS 001E 30 |
US 001F 31 |
2_ |
SP 0020 32 |
! 0021 33 |
" 0022 34 |
35 |
36 |
% 0025 37 |
& 0026 38 |
' 0027 39 |
( 0028 40 |
) 0029 41 |
* 002A 42 |
+ 002B 43 |
, 002C 44 |
- 002D 45 |
. 002E 46 |
/ 002F 47 |
3_ |
0 0030 48 |
1 0031 49 |
2 0032 50 |
3 0033 51 |
4 0034 52 |
5 0035 53 |
6 0036 54 |
7 0037 55 |
8 0038 56 |
9 0039 57 |
|
|
< 003C 60 |
61 003D 075 |
> 003E 62 |
? 003F 63 |
4_ |
64 |
A 0041 65 |
B 0042 66 |
C 0043 67 |
D 0044 68 |
E 0045 69 |
F 0046 70 |
G 0047 71 |
H 0048 72 |
I 0049 73 |
J 004A 74 |
K 004B 75 |
L 004C 76 |
M 004D 77 |
N 004E 78 |
O 004F 79 |
5_ |
P 0050 80 |
Q 0051 81 |
R 0052 82 |
S 0053 83 |
T 0054 84 |
U 0055 85 |
V 0056 86 |
W 0057 87 |
X 0058 88 |
Y 0059 89 |
Z 005A 90 |
91 |
92 |
93 |
94 |
_ 005F 95 |
6_ |
96 |
a 0061 97 |
b 0062 98 |
c 0063 99 |
d 0064 100 |
e 0065 101 |
f 0066 102 |
g 0067 103 |
h 0068 104 |
i 0069 105 |
j 006A 106 |
k 006B 107 |
l 006C 108 |
m 006D 109 |
n 006E 110 |
o 006F 111 |
7_ |
p 0070 112 |
q 0071 113 |
r 0072 114 |
s 0073 115 |
t 0074 116 |
u 0075 117 |
v 0076 118 |
w 0077 119 |
x 0078 120 |
y 0079 121 |
z 007A 122 |
123 |
124 |
125 |
126 |
DEL 007F 127 |
Národní varianty
Některé národní varianty jsou uvedeny v následující tabulce:
|
|
Další proprietární standardy později schválené pro mezinárodní použití některými standardizačními výbory:
|
|
Rozdíly v jednotlivých kódováních ukazuje následující tabulka: