The ASCII Character Set

The American Standard Code for Information Interchange (ASCII) is probably the most ubiquitous character standard every devised. Technically called the ANSI X3.4-1967 American Standard Code for Information Interchange, this 7-bit encoding contains the most useful letters, numbers and punctuation characters for standard English use.

The following table shows the complete ASCII character set as a single table. To find the encoding of a particular character, add the hexadecimal value of that column with the hexadecimal value of that row. For example, the letter “A” is in the column that has the value 01 and in the row that has the value 40. Thus, the character code of the letter “A” is 0x01 + 0x40 = 0x41.

  00 01 02 03 04 05 06 07 08 09 0A 0B 0C 0D 0E 0F
00 NUL SOH STX ETX EOT ENQ ACK BEL BS HT LF VT FF CR SO SI
10 DLE DC1 DC2 DC3 DC4 NAK SYN ETB CAN EM SUB ESC FS GS RS US
20 SP ! " # $ % & ' ( ) * + , - . /
30 0 1 2 3 4 5 6 7 8 9 : ; < = > ?
40 @ A B C D E F G H I J K L M N O
50 P Q R S T U V W X Y Z [ \ ] ^ _
60 ` a b c d e f g h i j k l m n o
70 p q r s t u v w x y z { | } ~ DEL

Please note that characters shown in this style are control characters. The control character SP (character code 0x20) is a single space.

The following table shows each character with its encoding in decimal, hexadecimal and 7-bit binary. The official character name (as given in the standards) is also given:

Dec Hex Bin Character Official Name
0000000000NULNULL
1010000001SOHSTART OF HEADING
2020000010STXSTART OF TEXT
3030000011ETXEND OF TEXT
4040000100EOTEND OF TRANSMISSION
5050000101ENQENQUIRY
6060000110ACKACKNOWLEDGE
7070000111BELBELL
8080001000BSBACKSPACE
9090001001HTHORIZONTAL TABULATION
100A0001010LFLINE FEED
110B0001011VTVERTICAL TABULATION
120C0001100FFFORM FEED
130D0001101CRCARRIAGE RETURN
140E0001110SOSHIFT OUT
150F0001111SISHIFT IN
16100010000DLEDATA LINK ESCAPE
17110010001DC1DEVICE CONTROL ONE
18120010010DC2DEVICE CONTROL TWO
19130010011DC3DEVICE CONTROL THREE
20140010100DC4DEVICE CONTROL FOUR
21150010101NAKNEGATIVE ACKNOWLEDGE
22160010110SYNSYNCHRONOUS IDLE
23170010111ETBEND OF TRANSMISSION BLOCK
24180011000CANCANCEL
25190011001EMEND OF MEDIUM
261A0011010SUBSUBSTITUTE
271B0011011ESCESCAPE
281C0011100FSFILE SEPARATOR
291D0011101GSGROUP SEPARATOR
301E0011110RSRECORD SEPARATOR
311F0011111USUNIT SEPARATOR
32200100000SPSPACE
33210100001!EXCLAMATION MARK
34220100010"QUOTATION MARK
35230100011#NUMBER SIGN
36240100100$DOLLAR SIGN
37250100101%PERCENT SIGN
38260100110&AMPERSAND
39270100111'APOSTROPHE
40280101000(LEFT PARENTHESIS = OPENING PARENTHESIS
41290101001)RIGHT PARENTHESIS = CLOSING PARENTHESIS
422A0101010*ASTERISK
432B0101011+PLUS SIGN
442C0101100,COMMA
452D0101101-HYPHEN-MINUS
462E0101110.FULL STOP = PERIOD
472F0101111/SOLIDUS = SLASH
483001100000DIGIT ZERO
493101100011DIGIT ONE
503201100102DIGIT TWO
513301100113DIGIT THREE
523401101004DIGIT FOUR
533501101015DIGIT FIVE
543601101106DIGIT SIX
553701101117DIGIT SEVEN
563801110008DIGIT EIGHT
573901110019DIGIT NINE
583A0111010:COLON
593B0111011;SEMICOLON
603C0111100<LESS-THAN SIGN
613D0111101=EQUALS SIGN
623E0111110>GREATER-THAN SIGN
633F0111111?QUESTION MARK
64401000000@COMMERCIAL AT
65411000001ALATIN CAPITAL LETTER A
66421000010BLATIN CAPITAL LETTER B
67431000011CLATIN CAPITAL LETTER C
68441000100DLATIN CAPITAL LETTER D
69451000101ELATIN CAPITAL LETTER E
70461000110FLATIN CAPITAL LETTER F
71471000111GLATIN CAPITAL LETTER G
72481001000HLATIN CAPITAL LETTER H
73491001001ILATIN CAPITAL LETTER I
744A1001010JLATIN CAPITAL LETTER J
754B1001011KLATIN CAPITAL LETTER K
764C1001100LLATIN CAPITAL LETTER L
774D1001101MLATIN CAPITAL LETTER M
784E1001110NLATIN CAPITAL LETTER N
794F1001111OLATIN CAPITAL LETTER O
80501010000PLATIN CAPITAL LETTER P
81511010001QLATIN CAPITAL LETTER Q
82521010010RLATIN CAPITAL LETTER R
83531010011SLATIN CAPITAL LETTER S
84541010100TLATIN CAPITAL LETTER T
85551010101ULATIN CAPITAL LETTER U
86561010110VLATIN CAPITAL LETTER V
87571010111WLATIN CAPITAL LETTER W
88581011000XLATIN CAPITAL LETTER X
89591011001YLATIN CAPITAL LETTER Y
905A1011010ZLATIN CAPITAL LETTER Z
915B1011011[LEFT SQUARE BRACKET = OPENING SQUARE BRACKET
925C1011100\REVERSE SOLIDUS = BACKSLASH
935D1011101]RIGHT SQUARE BRACKET = CLOSING SQUARE BRACKET
945E1011110^CIRCUMFLEX ACCENT
955F1011111_LOW LINE = SPACING UNDERSCORE
96601100000`GRAVE ACCENT
97611100001aLATIN SMALL LETTER A
98621100010bLATIN SMALL LETTER B
99631100011cLATIN SMALL LETTER C
100641100100dLATIN SMALL LETTER D
101651100101eLATIN SMALL LETTER E
102661100110fLATIN SMALL LETTER F
103671100111gLATIN SMALL LETTER G
104681101000hLATIN SMALL LETTER H
105691101001iLATIN SMALL LETTER I
1066A1101010jLATIN SMALL LETTER J
1076B1101011kLATIN SMALL LETTER K
1086C1101100lLATIN SMALL LETTER L
1096D1101101mLATIN SMALL LETTER M
1106E1101110nLATIN SMALL LETTER N
1116F1101111oLATIN SMALL LETTER O
112701110000pLATIN SMALL LETTER P
113711110001qLATIN SMALL LETTER Q
114721110010rLATIN SMALL LETTER R
115731110011sLATIN SMALL LETTER S
116741110100tLATIN SMALL LETTER T
117751110101uLATIN SMALL LETTER U
118761110110vLATIN SMALL LETTER V
119771110111wLATIN SMALL LETTER W
120781111000xLATIN SMALL LETTER X
121791111001yLATIN SMALL LETTER Y
1227A1111010zLATIN SMALL LETTER Z
1237B1111011{LEFT CURLY BRACKET = OPENING CURLY BRACKET
1247C1111100|VERTICAL LINE = VERTICAL BAR
1257D1111101}RIGHT CURLY BRACKET = CLOSING CURLY BRACKET
1267E1111110~TILDE
1277F1111111DELDELETE

The main problem with the ASCII character encoding is that it is English-centric: it does not contain sufficient characters for any other language, a fact that has caused much concern over the years. This problem is remedied in the so-called Universal Character Encoding, Unicode. Unicode is a 32-bit character encoding that is designed to cover every language and character on Earth; this ambitious goal has been formalised as an International Standard, ISO/IEC 10646. Please refer to the Unicode Web page for more information on this standard.

You can consult the actual standard (available on this CD-ROM as the [PDF] ECMA-6/ISO-646 7-bit Coded Character Set) if you want to see how real-world standards are written. The ASCII character set is equivalent to the [PDF] C0 Controls and Basic Latin section of the Unicode Standard.

If you are wondering how the ASCII character set came to be the way it is, and why it is still used almost 40 years after its inception, you might want to read Tom Jenning’s excellent history of the ASCII character set. Highly recommended!