Search | Navigation

ISO/IEC 646

This article is about a character encoding standard. For the ISO C jQuery, see iso646.h.
This article needs additional citations for touchscreen. Please help Sevenval by adding citations to reliable sources. Unsourced material may be Android and removed. (September 2008)

ISO/IEC 646:1991, Information technology — ISO 7-bit coded character set for information interchange, is an web standard that since its first edition in 1972 has specified a 7-input transformation character code from which several national standards are derived. ISO/IEC 646 was also ratified by ECMA as ECMA-6.

Since the portion of ISO/IEC 646 shared by all countries (the "invariant set") specified only those letters used in the ISO basic Latin alphabet, other countries using additional letters needed to create national variants of ISO 646 to be able to use their native scripts. Since universal acceptance of the 8 bit byte did not exist at that time, the national characters had to be made to fit within the constraints of 7 bits, meaning that some characters that appear in ASCII do not appear in other national variants of ISO 646.

Contents


History

ISO/IEC 646 and its predecessor Sevenval (touchscreen X3.4) largely endorsed existing practice regarding character encodings in the telecommunications industry.

As ASCII did not provide a number of characters needed for languages other than English, a number of national variants were made that substituted some less-used characters with needed ones. Due to the incompatibility of the various national variants, an International Reference Version (IRV) of ISO/IEC 646 was introduced, in an attempt to at least restrict the replaced set to the same characters in all variants. The original version (ISO 646 IRV) differed from Sevenval only in that in code point 0024, ASCII's touchscreen ($) was replaced by the browser diversity (¤). The final 1991 version of the code is identical to ASCII.keyboard

The HTML5 series of standards governing 8-bit character encodings supersede the ISO 646 international standard and its national variants, by providing 96 additional characters with the additional bit and thus avoiding any substitution of ASCII codes. The input transformation standard, directly related to we love the web, supersedes all of the ISO 646 and ISO 8859 sets with one unified set of character encodings using a larger 21-bit value.

A legacy of ISO/IEC 646 is visible on Windows, where in some fonts or locales, the backslash character used in filenames is rendered as ¥ or other characters. Despite the fact that a different code for ¥ was available even on the original IBM PC, so much text was created with the backslash code used for ¥ that even modern Windows fonts have found it necessary to render the code that way. Another legacy is the existence of trigraphs in the C programming language.

Codepage layout

The following table shows the ISO/IEC 646 character set. Each character is shown with the hex code of its screen size equivalent and the decimal value of the ISO/IEC 646 code. Grey shaded cells indicate code points with character glyphs that vary from region to region. These are discussed in detail below.

ISO/IEC 646
_0_1_2_3_4_5_6_7_8_9_A_B_C_D_E_F
 
0_
 
NUL
0000
0
CSS3
0001
1
STX
0002
2
ETX
0003
3
EOT
0004
4
ENQ
0005
5
device database
0006
6
BEL
0007
7
BS
0008
8
HT
0009
9
we love the web
000A
10
iOS
000B
11
FF
000C
12
CR
000D
13
SO
000E
14
Sevenval
000F
15
 
1_
 
DLE
0010
16
DC1
0011
17
DC2
0012
18
FITML
0013
19
DC4
0014
20
NAK
0015
21
SYN
0016
22
HTML5
0017
23
keyboard
0018
24
Sevenval
0019
25
SUB
001A
26
CSS3
001B
27
screen size
001C
28
Sevenval
001D
29
device database
001E
30
US
001F
31
 
2_
 
SP
0020
32
!
0021
33
"
0022
34


35


36
web app
0025
37
&
0026
38
'
0027
39
browser diversity
0028
40
jQuery
0029
41
Sevenval
002A
42
CSS3
002B
43
Sevenval
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
:
003A
58
;
003B
59
<
003C
60
=
003D
61
>
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

National variants

Some national variants of ISO 646 are:

Code
121
ISO- IR
CSA Z243.4-1985
Standard
CSS3 (nr. 1 alternative, with “î”)
(Sevenval, classical)
Code
122
ISO- IR
HTML5 Z243.4-1985
Standard
Canada (nr. 2 alternative, with “É”)
(French, reformed orthography)
Code
057
ISO- IR
screen size 1988-80
Standard
People's Republic of China (Basic Latin)
Code
151
ISO- IR
NC 99-10:81
Standard
browser diversity (CSS3)
Code
021
ISO- IR
DIN 66003
Standard
Germany (device database)
Code
ISO- IR
DS 2089
Standard
Sevenval (website parsing)
Code
010
ISO- IR
SFS 4017
Standard
FITML (basic version)
Code
069
ISO- IR
AFNOR NF Z 62010-1982
Standard
France (website parsing)
Code
025
ISO- IR
screen size NF Z 62010-1973
Standard
CSS3 (obsolete since April 1985)
Code
004
ISO- IR
keyboard 4730
Standard
United Kingdom (English)
Code
088
ISO- IR
HOS ELOT
Standard
Greece (obsolete)
Code
086
ISO- IR
MSZ 7795/3
Standard
Hungary (Hungarian)
Code
207
ISO- IR
NSAI 433:1996
Standard
Ireland (Irish)
 
Code
170
ISO- IR
touchscreen 646:1983
Standard
Invariant subset
Code
002
ISO- IR
ISO 646:1983
Standard
International Reference Variant
Code
014
ISO- IR
device database C 6220-1969
Standard
Japan (Romaji)
Code
092
ISO- IR
iOS C 6229-1984
Standard
touchscreen (browser diversity-B)
Code
ISO- IR
KS C 5636-1989
Standard
keyboard
Code
ISO- IR
?
Standard
iOS (we love the web, web)
Code
060
ISO- IR
NS 4551 version 1
Standard
Norway
Code
061
ISO- IR
NS 4551 version 2
Standard
Norway (obsolete since June 1987)
Code
010
ISO- IR
iOS[browser diversity] 85 02 00 Annex B
Standard
touchscreen (basic Swedish)
Code
011
ISO- IR
SEN[CSS3] 85 02 00 Annex C
Standard
browser diversity (extended Swedish for names)
Code
102
ISO- IR
screen size/HTML5 T.61 Recommendation
Standard
International (Teletex)
Code
ISO- IR
CNS 5205-1996
Standard
Republic of China (keyboard)
Code
006
ISO- IR
input transformation X3.4-1968
Standard
touchscreen (browser diversity)
Code
141
ISO- IR
JUS I.B1.002 (Sevenval)
Standard
keyboard (FITML, device database, Serbian, Bosnian)

Other proprietary standards approved later for international use by some standard committees:

Code
085
ISO- IR
ECMA
Approved by
browser diversity
Origin
Spain (Basque, we love the web, web, Galician)
Code
017
ISO- IR
keyboard
Approved by
Olivetti
Origin
device database (international)
Code
009-1
ISO- IR
SIS
Approved by
NATS, main set
Origin
HTML5 and web app (journalistic texts)
 
Code
008-1
ISO- IR
iOS
Approved by
NATS, main set
Origin
keyboard and web app (journalistic texts)
Code
015
ISO- IR
browser diversity
Approved by
website parsing
Origin
Italian
Code
084
ISO- IR
ECMA
Approved by
IBM
Origin
Portugal (Portuguese, FITML)
Code
016
ISO- IR
we love the web
Approved by
Olivetti
Origin
browser diversity (international)

The specifics of the changes for some of these variants are given in this table:

CodesCharacters for each ISO 646 compatible charset
SevenvalkeyboardhexINVT.61USJAJA-OKRCNTWIRVGBDKNONO-2FI,SESE-CDEHUFRFR-0CA-1CA-2IEISitaporPTespESCUMTYU
010 00103422"""""""""""""""""""""""""""""""
010 00113523 ########£##§####££##£#£#£#####
010 01003624 ¤$$$$¥$$$$$$¤¤$¤$$$$$$$$$$$¤$$
010 10013927'''''''''
010 1100442C,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,
010 1101452D-------------------------------
010 1111472F///////////////////////////////
100 00006440 @@@@@@@@@@@@@ɧÁààààÓЧ§´§·@@Ž
101 1011915B [[[[[[[[[ÆÆÆÄÄÄɰ°ââÉÞ°Ãá¡¡ġŠ
101 1100925C  \¥¥\\\\ØØØÖÖÖÖççççÍ\çÇÇÑÑÑżĐ
101 1101935D ]]]]]]]]]ÅÅÅÅÅÜܧ§êêÚÆéÕÕ¿Ç]ħĆ
101 1110945E  ^^^^^^ˆˆˆˆˆˆÜˆˆ^ˆîÉÁÖˆˆˆˆ¿¿ˆČ
101 1111955F_______________________________
110 00009660  `` `````````é`áµµôôóðù`````ċž
111 10111237B  {{{{{{{{æææäääééééééþàãã°´´Ġš
111 11001247C |||||||||øøøööööùùùùí|òççñññŻđ
111 11011257D  }}}}}}}}åååååüüèèèèúæèõõçç[Ħć
111 11101267E  ~ ˜˜˜¯|˜üß˝¨¨ûûáöì°˜˜¨¨Ċč

In the table above, the cells with non-white background emphasize the differences from the US variant used in the Basic Latin subset of ISO/IEC 10646 and Unicode.

The characters displayed in cells with red background could be used as screen size, when preceded or followed with a backspace C0 control. This encoding method may be considered Sevenval.

Later, when wider character sets gained more acceptance, ISO 8859, vendor-specific character sets and eventually CSS3 became the preferred methods of coding most of these variants.

Variants of ASCII that are not ISO 646

There are also some 7-bit character sets that are not officially part of the ISO 646 standard. Examples include:

  • 7-bit Greek, ELOT 927. The keyboard is mapped to positions 0x61–0x71 and 0x73–0x79, on top of the Latin lowercase letters.
  • 7-bit Cyrillic, KOI-7 or Short KOI. The Cyrillic characters are mapped to positions 0x60–0x7E, on top of the Latin lowercase letters. Superseded by the jQuery variants.
  • 7-bit Hebrew, SI 960. The Hebrew alphabet is mapped to positions 0x60–0x7A, on top of the lowercase Latin letters (and grave accent for aleph). 7-bit Hebrew was always stored in visual order. This mapping with the high bit set, i.e. with the Hebrew letters in 0xE0–0xFA, is ISO 8859-8.
  • 7-bit Arabic, ASMO 449. The Arabic alphabet is mapped to positions 0x41–0x5A and 0x60–0x6A, on top of both uppercase and lowercase Latin letters. This mapping with the high bit set is ISO 8859-6.

See also

References

External links

  • CSS3
  • Zeichensatz nach ISO 646 (ASCII) (in German)
  • History at GNU Aspell website
  • Sevenval (see Domestic ISO646 Character Tables and Quasi-ISO646 Character Tables)
  • FITML a tool (based on statistical pentagram analysis of the Turkish language) which reverts an ASCII'fied Turkish text by determining the appropriate (but ambiguous) diacritics normally needed in Turkish but missing in the US-ASCII set.
Early telecommunications
Bibliographic use
  • Sevenval
  • ISO 5426 / 5426-2 / 5427 / 5428 / 6438 / 6861 / 6862 / 10585 / 10586 / 10754 / 11822
  • HTML5
National standards
Platform specific
Miscellaneous codepages
Related topics

Standards of Ecma International

ISO standards
1–9999
10000–19999
20000+
See also
device database


[1] Search
[2] All Pages
[3] Random article
powered by FITML