Character Encodings/Code Tables/EBCDIC/EBCDIC 037

From Wikibooks, open books for an open world
Jump to navigation Jump to search


IBM code page 37 (CCSID 37)[1] is an EBCDIC code page with the full Latin-1 character set used in IBM mainframes.[2] It is used in some English- and Portuguese-speaking countries, including Australia, Brazil, Canada, New Zealand, Portugal, South Africa, and the United States.

CCSID 1140 is the euro currency update of code page/CCSID 37.[3] In that code page, the "¤" (currency sign) character at code point 9F is replaced with the "€" (euro sign) character.[4][5]

This code page was created in 1987.[6] An older version is code page 1070.

Codepage layout[edit | edit source]

Code page 37 exists in two versions:[7]:5·2 a "base character set" or "DP94" version (GCSGID 101 with CPGID 37, or CCSID 8229), containing only 94 graphical characters (plus the space and control codes),[8][7]:5·15 and a "CECP" (Country Extended Code Page) version (GCSGID 697 with CPGID 37, or CCSID 37) with expansions to support the entire ISO/IEC 8859-1 repertoire.[9][7][10]:5·17

Code page 37[11][12][7]
0 1 2 3 4 5 6 7 8 9 A B C D E F
0x NUL SOH STX ETX SEL HT RNL DEL GE SPS RPT VT FF CR SO SI
1x DLE DC1 DC2 DC3 RES/
ENP
NL BS POC CAN EM UBS CU1 IFS IGS IRS ITB
2x DS SOS FS WUS BYP/
INP
LF ETB ESC SA SFE SM/
SW
CSP MFA ENQ ACK BEL
3x SYN IR PP TRN NBS EOT SBS IT RFF CU3 DC4 NAK SUB
4x SP NBSP â
00E2
ä
00E4
à
00E0
á
00E1
ã
00E3
å
00E5
ç
00E7
ñ
00F1
¢
00A2
.
002E
<
003C
(
0028
+
002B
|
007C
5x &
0026
é
00E9
ê
00EA
ë
00EB
è
00E8
í
00ED
î
00EE
ï
00EF
ì
00EC
ß
00DF
!
0021
$
0024
*
002A
)
0029
;
003B
¬
00AC
6x -
002D
/
002F
Â
00C2
Ä
00C4
À
00C0
Á
00C1
Ã
00C3
Å
00C5
Ç
00C7
Ñ
00D1
¦
00A6
,
002C
%
0025
_
005F
>
003E
?
003F
7x ø
00F8
É
00C9
Ê
00CA
Ë
00CB
È
00C8
Í
00CD
Î
00CE
Ï
00CF
Ì
00CC
`
0060
:
003A
#
0023
@
0040
'
0027
=
003D
"
0022
8x Ø
00D8
a
0061
b
0062
c
0063
d
0064
e
0065
f
0066
g
0067
h
0068
i
0069
«
00AB
»
00BB
ð
00F0
ý
00FD
þ
00FE
±
00B1
9x °
00B0
j
006A
k
006B
l
006C
m
006D
n
006E
o
006F
p
0070
q
0071
r
0072
ª
00AA
º
00BA
æ
00E6
¸
00B8
Æ
00C6
¤
00A4
Ax µ
00B5
~
007E
s
0073
t
0074
u
0075
v
0076
w
0077
x
0078
y
0079
z
007A
¡
00A1
¿
00BF
Ð
00D0
Ý
00DD
Þ
00DE
®
00AE
Bx ^
005E
£
00A3
¥
00A5
·
00B7
©
00A9
§
00A7

00B6
¼
00BC
½
00BD
¾
00BE
[
005B
]
005D
¯
00AF
¨
00A8
´
00B4
×
00D7
Cx {
007B
A
0041
B
0042
C
0043
D
0044
E
0045
F
0046
G
0047
H
0048
I
0049
SHY ô
00F4
ö
00F6
ò
00F2
ó
00F3
õ
00F5
Dx }
007D
J
004A
K
004B
L
004C
M
004D
N
004E
O
004F
P
0050
Q
0051
R
0052
¹
00B9
û
00FB
ü
00FC
ù
00F9
ú
00FA
ÿ
00FF
Ex \
005C
÷
00F7
S
0053
T
0054
U
0055
V
0056
W
0057
X
0058
Y
0059
Z
005A
²
00B2
Ô
00D4
Ö
00D6
Ò
00D2
Ó
00D3
Õ
00D5
Fx 0
0030
1
0031
2
0032
3
0033
4
0034
5
0035
6
0036
7
0037
8
0038
9
0039
³
00B3
Û
00DB
Ü
00DC
Ù
00D9
Ú
00DA
EO

     CECP additions not part of the base set.

Code page translation[edit | edit source]

Since CP 037 contains all of the standard Latin-1 characters, it is possible to translate the character codes from the CP 037 charset to ISO 8859-1 character codes, so that translation back to the CP 037 charset is an exact value-preserving [round-trip conversion. Likewise, half of the control character codes can be translated into their exact ASCII equivalents. If the remaining EBCDIC-only control characters are translated (arbitrarily) into the remaining unused ASCII codes points (hex 80 to 9F) as well, the resulting translation covers all of the 256 character code points. Such a translation table is shown below:

CP 037 → ISO 8859-1
  _0 _1 _2 _3 _4 _5 _6 _7 _8 _9 _A _B _C _D _E _F
0_ 00 01 02 03 9C 09 86 7F 97 8D 8E 0B 0C 0D 0E 0F
1_ 10 11 12 13 9D 85 08 87 18 19 92 8F 1C 1D 1E 1F
2_ 80 81 82 83 84 0A 17 1B 88 89 8A 8B 8C 05 06 07
3_ 90 91 16 93 94 95 96 04 98 99 9A 9B 14 15 9E 1A
4_ 20 A0 E2 E4 E0 E1 E3 E5 E7 F1 A2 2E 3C 28 2B 7C
5_ 26 E9 EA EB E8 ED EE EF EC DF 21 24 2A 29 3B AC
6_ 2D 2F C2 C4 C0 C1 C3 C5 C7 D1 A6 2C 25 5F 3E 3F
7_ F8 C9 CA CB C8 CD CE CF CC 60 3A 23 40 27 3D 22
8_ D8 61 62 63 64 65 66 67 68 69 AB BB F0 FD FE B1
9_ B0 6A 6B 6C 6D 6E 6F 70 71 72 AA BA E6 B8 C6 A4
A_ B5 7E 73 74 75 76 77 78 79 7A A1 BF D0 DD DE AE
B_ 5E A3 A5 B7 A9 A7 B6 BC BD BE 5B 5D AF A8 B4 D7
C_ 7B 41 42 43 44 45 46 47 48 49 AD F4 F6 F2 F3 F5
D_ 7D 4A 4B 4C 4D 4E 4F 50 51 52 B9 FB FC F9 FA FF
E_ 5C F7 53 54 55 56 57 58 59 5A B2 D4 D6 D2 D3 D5
F_ 30 31 32 33 34 35 36 37 38 39 B3 DB DC D9 DA 9F

References[edit | edit source]

  1. "CCSID 37 information document". Archived from the original on 2016-03-26.
  2. "Code page 037 information document". Archived from the original on 2016-03-04.
  3. "CCSID 1140 information document". Archived from the original on 2016-03-26.
  4. Code Page CPGID 01140 (pdf) (PDF), IBM
  5. Code Page CPGID 01140 (txt), IBM
  6. "U-M Computing News, February 15, 1988 issue". Computing Center. pp. 22–24. Retrieved 6 July 2020.
  7. a b c d "Chapter 5. 3270 Display Station and Printer Code Page Charts" (PDF). 3174 Establishment Controller Character Set Reference (3rd ed.). IBM. 1990 [1988]. GA27-3831-02.
  8. "Coded character set identifiers—CCSID 8229". IBM. Archived from the original on 2014-11-29.
  9. "Coded character set identifiers—CCSID 37". IBM. Archived from the original on 2014-11-29.
  10. "iso8859.txt". Kermit project / Columbia University.
  11. Code Page CPGID 00037 (pdf) (PDF), IBM
  12. Code Page CPGID 00037 (txt), IBM