Character | Number | Description | Group |
---|---|---|---|
0 - 31 | Control characters | Printable Characters | |
32 | space | Printable Characters | |
! | 33 | exclamation mark | Printable Characters |
" | 34 | quotation mark | Printable Characters |
# | 35 | number sign | Printable Characters |
$ | 36 | dollar sign | Printable Characters |
% | 37 | percent sign | Printable Characters |
& | 38 | ampersand | Printable Characters |
39 | apostrophe | Printable Characters | |
( | 40 | left parenthesis | Printable Characters |
) | 41 | right parenthesis | Printable Characters |
* | 42 | asterisk | Printable Characters |
+ | 43 | plus sign | Printable Characters |
, | 44 | comma | Printable Characters |
- | 45 | hyphen | Printable Characters |
. | 46 | period | Printable Characters |
/ | 47 | slash | Printable Characters |
0 | 48 | digit 0 | Printable Characters |
1 | 49 | digit 1 | Printable Characters |
2 | 50 | digit 2 | Printable Characters |
3 | 51 | digit 3 | Printable Characters |
4 | 52 | digit 4 | Printable Characters |
5 | 53 | digit 5 | Printable Characters |
6 | 54 | digit 6 | Printable Characters |
7 | 55 | digit 7 | Printable Characters |
8 | 56 | digit 8 | Printable Characters |
9 | 57 | digit 9 | Printable Characters |
: | 58 | colon | Printable Characters |
; | 59 | semicolon | Printable Characters |
< | 60 | less-than | Printable Characters |
= | 61 | equals-to | Printable Characters |
> | 62 | greater-than | Printable Characters |
? | 63 | question mark | Printable Characters |
@ | 64 | at sign | Printable Characters |
A | 65 | uppercase A | Printable Characters |
B | 66 | uppercase B | Printable Characters |
C | 67 | uppercase C | Printable Characters |
D | 68 | uppercase D | Printable Characters |
E | 69 | uppercase E | Printable Characters |
F | 70 | uppercase F | Printable Characters |
G | 71 | uppercase G | Printable Characters |
H | 72 | uppercase H | Printable Characters |
I | 73 | uppercase I | Printable Characters |
J | 74 | uppercase J | Printable Characters |
K | 75 | uppercase K | Printable Characters |
L | 76 | uppercase L | Printable Characters |
M | 77 | uppercase M | Printable Characters |
N | 78 | uppercase N | Printable Characters |
O | 79 | uppercase O | Printable Characters |
P | 80 | uppercase P | Printable Characters |
Q | 81 | uppercase Q | Printable Characters |
R | 82 | uppercase R | Printable Characters |
S | 83 | uppercase S | Printable Characters |
T | 84 | uppercase T | Printable Characters |
U | 85 | uppercase U | Printable Characters |
V | 86 | uppercase V | Printable Characters |
W | 87 | uppercase W | Printable Characters |
X | 88 | uppercase X | Printable Characters |
Y | 89 | uppercase Y | Printable Characters |
Z | 90 | uppercase Z | Printable Characters |
[ | 91 | left square bracket | Printable Characters |
\ | 92 | backslash | Printable Characters |
] | 93 | right square bracket | Printable Characters |
^ | 94 | caret | Printable Characters |
_ | 95 | underscore | Printable Characters |
` | 96 | grave accent | Printable Characters |
a | 97 | lowercase a | Printable Characters |
b | 98 | lowercase b | Printable Characters |
c | 99 | lowercase c | Printable Characters |
d | 100 | lowercase d | Printable Characters |
e | 101 | lowercase e | Printable Characters |
f | 102 | lowercase f | Printable Characters |
g | 103 | lowercase g | Printable Characters |
h | 104 | lowercase h | Printable Characters |
i | 105 | lowercase i | Printable Characters |
j | 106 | lowercase j | Printable Characters |
k | 107 | lowercase k | Printable Characters |
l | 108 | lowercase l | Printable Characters |
m | 109 | lowercase m | Printable Characters |
n | 110 | lowercase n | Printable Characters |
o | 111 | lowercase o | Printable Characters |
p | 112 | lowercase p | Printable Characters |
q | 113 | lowercase q | Printable Characters |
r | 114 | lowercase r | Printable Characters |
s | 115 | lowercase s | Printable Characters |
t | 116 | lowercase t | Printable Characters |
u | 117 | lowercase u | Printable Characters |
v | 118 | lowercase v | Printable Characters |
w | 119 | lowercase w | Printable Characters |
x | 120 | lowercase x | Printable Characters |
y | 121 | lowercase y | Printable Characters |
z | 122 | lowercase z | Printable Characters |
{ | 123 | left curly brace | Printable Characters |
| | 124 | vertical bar | Printable Characters |
} | 125 | right curly brace | Printable Characters |
~ | 126 | tilde | Printable Characters |
NUL | 0 | null character | Device Control Characters |
SOH | 1 | start of header | Device Control Characters |
STX | 2 | start of text | Device Control Characters |
ETX | 3 | end of text | Device Control Characters |
EOT | 4 | end of transmission | Device Control Characters |
ENQ | 5 | enquiry | Device Control Characters |
ACK | 6 | acknowledge | Device Control Characters |
BEL | 7 | bell (ring) | Device Control Characters |
BS | 8 | backspace | Device Control Characters |
HT | 9 | horizontal tab | Device Control Characters |
LF | 10 | line feed | Device Control Characters |
VT | 11 | vertical tab | Device Control Characters |
FF | 12 | form feed | Device Control Characters |
CR | 13 | carriage return | Device Control Characters |
SO | 14 | shift out | Device Control Characters |
SI | 15 | shift in | Device Control Characters |
DLE | 16 | data link escape | Device Control Characters |
DC1 | 17 | device control 1 | Device Control Characters |
DC2 | 18 | device control 2 | Device Control Characters |
DC3 | 19 | device control 3 | Device Control Characters |
DC4 | 20 | device control 4 | Device Control Characters |
NAK | 21 | negative acknowledge | Device Control Characters |
SYN | 22 | synchronize | Device Control Characters |
ETB | 23 | end transmission block | Device Control Characters |
CAN | 24 | cancel | Device Control Characters |
EM | 25 | end of medium | Device Control Characters |
SUB | 26 | substitute | Device Control Characters |
ESC | 27 | escape | Device Control Characters |
FS | 28 | file separator | Device Control Characters |
GS | 29 | group separator | Device Control Characters |
RS | 30 | record separator | Device Control Characters |
US | 31 | unit separator | Device Control Characters |
Device Control Characters | |||
DEL | 127 | delete (rubout) | Device Control Characters |
Before 1963, computer manufacturers had over sixty different ways of representing characters in computers. Machines could not communicate with one another. This problem was becoming increasingly evident as companies like IBM began networking computers. That year, ASCII (pronounced “AS-KEE”), the American Standard Code for Information Interchange, was released to serve as a common language among computers. The idea was that 128 characters—letters, numbers, punctuation marks, and control codes—would each have a standard numeric value.
In May 1961, an IBM engineer, Bob Bemer, sent a proposal to the American National Standards Institute (ANSI) to develop a single code for computer communication. ANSI created the X3.4 Committee, assembling most of the existing computer makers under the leadership of John Auwaerter of the Teletype Corporation to work on a solution.
Over two years, the committee negotiated how the code would look and operate. Part of their difficulty was deciding which company’s proprietary characters would be included in the system. Bemer, now known as the “father of ASCII,” seemed to get most of his original wishes when the committee released its final design.
Among his important contributions was the “escape” sequence. Committee members, working in the limits of seven-bit hardware, could only created 128 characters. Understanding that this was not enough to create a global system, Bemer developed a method allowing computers to switch from one alphabet to another. More than 150 “extra-ASCII” alphabets have been created since 1963.
In 1968, President Lyndon B. Johnson signed a memorandum adopting ASCII as the standard communication language for federal computers. ASCII became ubiquitous with the spread of the Internet, as it was the basis for characters in email messages and HTML documents. It was present in hardware and most computer operating systems, although Windows moved away from ASCII with the release of its NT operating system in the late 1990s, which used the Unicode standard.
Yet it took eighteen years for ASCII to become installed in most computers from its year of publication. When IBM released its game-changing System/360 in 1964, the head of the development team, Frederick Brooks, decided that its punch cards and printers were not yet capable of using ASCII. IBM stuck with the old EBCDIC standard, entrenching the old punch-card code for years to come. Only the Univac 1050 and the typewriters produced by Teletype would adopted ASCII in the 1960s. In 1981, however, ASCII became the new standard when it released its first personal computer featuring the operating system.
The ASCII character set has gone through numerous changes over the years. This page lists some of the resources available that discuss the ASCII standards process over the years. ASCII is only one character set however, and this page lists some other sets that have been or currently are being used.