Jüri Ratas

CP437 (Codepage 437, DOSLatinUS) — кодовая страница, использовавшаяся в первоначальной версии IBM PC с 1981 года. CP437 послужила образцом для множества других кодировок, в том числе альтернативной кодировки для русского языка.

В ПЗУ видеоадаптера IBM PC был зашит шрифт для следующего набора символов:

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

263A

263B

2665

2666

2663

2660

2022

25D8

25CB

25D9

2642

2640

266A

266B

263C
1.
25BA

25C4

2195

203C

00B6
§
00A7

25AC

21A8

2191

2193

2192

2190

221F

2194

25B2

25BC
2.
0020
!
0021
"
0022
#
0023
$
0024
%
0025
&
0026
'
0027
(
0028
)
0029
*
002A
+
002B
,
002C
-
002D
.
002E
/
002F
3. 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. @
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. 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. `
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. p
0070
q
0071
r
0072
s
0073
t
0074
u
0075
v
0076
w
0077
x
0078
y
0079
z
007A
{
007B
¦
00A6
}
007D
~
007E

2302
8. Ç
00C7
ü
00FC
é
00E9
â
00E2
ä
00E4
à
00E0
å
00E5
ç
00E7
ê
00EA
ë
00EB
è
00E8
ï
00EF
î
00EE
ì
00EC
Ä
00C4
Å
00C5
9. É
00C9
æ
00E6
Æ
00C6
ô
00F4
ö
00F6
ò
00F2
û
00FB
ù
00F9
ÿ
00FF
Ö
00D6
Ü
00DC
¢
00A2
£
00A3
¥
00A5

20A7
ƒ
0192
A. á
00E1
í
00ED
ó
00F3
ú
00FA
ñ
00F1
Ñ
00D1
ª
00AA
º
00BA
¿
00BF

2310
¬
00AC
½
00BD
¼
00BC
¡
00A1
«
00AB
»
00BB
B.
2591

2592

2593

2502

2524

2561

2562

2556

2555

2563

2551

2557

255D

255C

255B

2510
C.
2514

2534

252C

251C

2500

253C

255E

255F

255A

2554

2569

2566

2560

2550

256C

2567
D.
2568

2564

2565

2559

2558

2552

2553

256B

256A

2518

250C

2588

2584

258C

2590

2580
E. α
03B1
ß
00DF
Γ
0393
π
03C0
Σ
03A3
σ
03C3
µ
00B5
τ
03C4
Φ
03A6
Θ
0398
Ω
03A9
δ
03B4

221E
φ
03C6
ε
03B5

2229
F.
2261
±
00B1

2265

2264

2320

2321
÷
00F7

2248
°
00B0

2219
·
00B7

221A

207F
²
00B2

25A0
 
00A0

В CP437, однако, кодовые позиции 0x000x1F и 0x7F заняты управляющими символами, то есть не имеют графического представления, а в кодовой позиции 0x7C размещена непрерывная, а не разорванная вертикальная черта (|).

Большинство современных видеоадаптеров ПК также содержит этот шрифт в ПЗУ. Компьютеры стран — членов СЭВ как серии ЕС ПЭВМ (например, «Правец 16», «Роботрон», ЕС-1841), так и других архитектур имели версии с аппаратной кириллизацией (русификацией) видеоплат. Для техники, выпускавшейся в западных странах и странах третьего мира, более популярным был способ с загрузкой национальных шрифтов программными средствами, как правило, на этапе загрузки операционной системы.

Интересный факт

В шрифтах видеоадаптеров MDA и VGA все символы имеют ширину 8 точек, но на экране в некоторых режимах отображаются шириной в 9 точек. Дополнительная пустая колонка нужна для визуального отделения букв друг от друга. Однако при отображении символов псевдографики (а точнее, при отображении символов с кодами 0xB00xDF) при включённом так называемом англ. line graphics enable mode[1] дополнительная 9‑я колонка не пуста, а повторяет 8‑ю, чтобы горизонтальные линии были неразрывны. Это является особенностью видеоконтроллера, и именно поэтому символы, не имеющие частей рамки с правого края, вынесены за указанный диапазон. Поэтому, загружая шрифт в видеоадаптер, нельзя размещать псевдографику в другом диапазоне, иначе горизонтальные линии будут разорваны.

Примечания

  1. FreeVGA Project: VGA Text Mode Operation (англ.). Архивировано 1 сентября 2010 года.

Ссылки

No tags for this post.