Code page 437

From Wikipedia, the free encyclopedia

IBM PC or MS-DOS code page 437, often abbreviated CP437 and also known as , DOS-US, OEM-US or sometimes misleadingly as just the OEM font,High ASCII or Extended ASCII[1][2], is the original character set of the IBM PC, circa 1981. The following is a table representing CP437 using the equivalent Unicode characters:

.0 .1 .2 .3 .4 .5 .6 .7 .8 .9 .A .B .C .D .E .F
 
0.
 
NULL
0
0

263A
1

263B
2

2665
3

2666
4

2663
5

2660
6

2022
7

25D8
8

25CB
9

25D9
10

2642
11

2640
12

266A
13

266B
14

263C
15
 
1.
 

25BA
16

25C4
17

2195
18

203C
19

B6
20
§
A7
21

25AC
22

21A8
23

2191
24

2193
25

2192
26

2190
27

221F
28

2194
29

25B2
30

25BC
31
 
2.
 

20
32
!
21
33
"
22
34
#
23
35
$
24
36
%
25
37
&
26
38
'
27
39
(
28
40
)
29
41
*
2A
42
+
2B
43
,
2C
44
-
2D
45
.
2E
46
/
2F
47
 
3.
 
0
30
48
1
31
49
2
32
50
3
33
51
4
34
52
5
35
53
6
36
54
7
37
55
8
38
56
9
39
57
:
3A
58
;
3B
59
<
3C
60
=
3D
61
>
3E
62
?
3F
63
 
4.
 
@
40
64
A
41
65
B
42
66
C
43
67
D
44
68
E
45
69
F
46
70
G
47
71
H
48
72
I
49
73
J
4A
74
K
4B
75
L
4C
76
M
4D
77
N
4E
78
O
4F
79
 
5.
 
P
50
80
Q
51
81
R
52
82
S
53
83
T
54
84
U
55
85
V
56
86
W
57
87
X
58
88
Y
59
89
Z
5A
90
[
5B
91
\
5C
92
]
5D
93
^
5E
94
_
5F
95
 
6.
 
`
60
96
a
61
97
b
62
98
c
63
99
d
64
100
e
65
101
f
66
102
g
67
103
h
68
104
i
69
105
j
6A
106
k
6B
107
l
6C
108
m
6D
109
n
6E
110
o
6F
111
 
7.
 
p
70
112
q
71
113
r
72
114
s
73
115
t
74
116
u
75
117
v
76
118
w
77
119
x
78
120
y
79
121
z
7A
122
{
7B
123
|
7C
124
}
7D
125
~
7E
126

2302
127
 
8.
 
Ç
C7
128
ü
FC
129
é
E9
130
â
E2
131
ä
E4
132
à
E0
133
å
E5
134
ç
E7
135
ê
EA
136
ë
EB
137
è
E8
138
ï
EF
139
î
EE
140
ì
EC
141
Ä
C4
142
Å
C5
143
 
9.
 
É
C9
144
æ
E6
145
Æ
C6
146
ô
F4
147
ö
F6
148
ò
F2
149
û
FB
150
ù
F9
151
ÿ
FF
152
Ö
D6
153
Ü
DC
154
¢
A2
155
£
A3
156
¥
A5
157

20A7
158
ƒ
192
159
 
A.
 
á
E1
160
í
ED
161
ó
F3
162
ú
FA
163
ñ
F1
164
Ñ
D1
165
ª
AA
166
º
BA
167
¿
BF
168

2310
169
¬
AC
170
½
BD
171
¼
BC
172
¡
A1
173
«
AB
174
»
BB
175
 
B.
 

2591
176

2592
177

2593
178

2502
179

2524
180

2561
181

2562
182

2556
183

2555
184

2563
185

2551
186

2557
187

255D
188

255C
189

255B
190

2510
191
 
C.
 

2514
192

2534
193

252C
194

251C
195

2500
196

253C
197

255E
198

255F
199

255A
200

2554
201

2569
202

2566
203

2560
204

2550
205

256C
206

2567
207
 
D.
 

2568
208

2564
209

2565
210

2559
211

2558
212

2552
213

2553
214

256B
215

256A
216

2518
217

250C
218

2588
219

2584
220

258C
221

2590
222

2580
223
 
E.
 
α
3B1
224
ß
DF
225
Γ
393
226
π
3C0
227
Σ
3A3
228
σ
3C3
229
µ
B5
230
τ
3C4
231
Φ
3A6
232
Θ
398
233
Ω
3A9
234
δ
3B4
235

221E
236
φ
3C6
237
ε
3B5
238

2229
239
 
F.
 

2261
240
±
B1
241

2265
242

2264
243

2320
244

2321
245
÷
F7
246

2248
247
°
B0
248

2219
249
·
B7
250

221A
251

207F
252
²
B2
253

25A0
254
 
A0
255

It is based on ASCII, with the following modifications:

  • The C0 control range (0x00–0x1F hex) is mapped to graphics characters. The codes can assume their original function as controls, but when placed in display RAM, for example in a screen editor like MS-DOS edit, they show as graphics. The graphics are various, such as smiling faces, card suits and musical notes. Code 0x7F, DEL, similarly shows as a graphic (a house).
  • The high-bit range, 0x80–0xFF, is mapped to various symbols: a few European characters (accented Latin vowels, etc) in no particular order and not sufficient for representation of most Western European languages, box drawing characters, mathematical symbols and a few Greek letters.

The repertoire of CP437 was taken from the character set of Wang word-processing machines, according to Bill Gates in an interview with Gates and Paul Allen that in the 2nd of October 1995 edition of Fortune Magazine:

"… we were also fascinated by dedicated word processors from Wang, because we believed that general-purpose machines could do that just as well. That's why, when it came time to design the keyboard for the IBM PC, we put the funny Wang character set into the machine—you know, smiley faces and boxes and triangles and stuff. We were thinking we'd like to do a clone of Wang word-processing software someday."

CP437 is inadequate for internationalisation, as it lacks characters necessary for some languages, such as À (capital A with grave) for French, and has only a few Greek letters. Later MS-DOS character sets, such as CP850 (DOS Latin-1), CP852 (DOS Central-European) and CP737 (DOS Greek), filled the gaps for international use while still being nearly compatible with CP437 by retaining most of the box-drawing characters. All CP437 characters are in Unicode and in Microsoft's WGL4 character set, therefore in most of the fonts on Microsoft Windows, and also in the default VGA font of the Linux kernel, and the ISO 10646 fonts for X11.

Implementors of mapping tables to Unicode should note that CP437 unifies some characters that look almost the same: 0xE1 is both the German sharp S (U+00DF, ß) and the Greek lowercase beta (U+03B2, β); 0xE4 is both the n-ary summation sign (U+2211, ∑) and the Greek uppercase sigma (U+03A3, Σ); 0xE6 is both the micro sign (U+00B5, µ) and the Greek lowercase mu (U+03BC, μ); 0xEA is both the ohm sign (U+2126, Ω) and the Greek uppercase omega (U+03A9, Ω) (note that in Unicode as well, the ohm sign is canonically equivalent to the capital omega, and its use is discouraged in favor of capital omega[1]); and 0xEE is both the element-of sign (U+2208, ∈) and the Greek lowercase epsilon (U+03B5, ε).

In DOS and Windows, most characters from CP437 can be inserted by holding down the Alt key and entering the character's three-digit decimal code on the numpad. (By prepending a zero, characters from the newer Windows-1252 code table can also be entered in Windows in this way.)

[edit] See also

[edit] External links

[edit] References

  1. ^ http://www.cdrummond.qc.ca/cegep/informat/Professeurs/Alain/files/ascii.htm
  2. ^ http://www.pcmag.com/encyclopedia_term/0,2542,t=OEM+font&i=48292,00.asp