Developer Tools

ASCII Code Table

Complete ASCII code table (0–127) with character-to-code converter. Look up decimal, hex, octal, and binary values with control character descriptions — a handy developer reference.

ASCII Character Table (0–127)
Dec Hex Oct Bin Char
0 00 000 00000000 NUL
1 01 001 00000001 SOH
2 02 002 00000010 STX
3 03 003 00000011 ETX
4 04 004 00000100 EOT
5 05 005 00000101 ENQ
6 06 006 00000110 ACK
7 07 007 00000111 BEL
8 08 010 00001000 BS
9 09 011 00001001 HT
10 0A 012 00001010 LF
11 0B 013 00001011 VT
12 0C 014 00001100 FF
13 0D 015 00001101 CR
14 0E 016 00001110 SO
15 0F 017 00001111 SI
16 10 020 00010000 DLE
17 11 021 00010001 DC1
18 12 022 00010010 DC2
19 13 023 00010011 DC3
20 14 024 00010100 DC4
21 15 025 00010101 NAK
22 16 026 00010110 SYN
23 17 027 00010111 ETB
24 18 030 00011000 CAN
25 19 031 00011001 EM
26 1A 032 00011010 SUB
27 1B 033 00011011 ESC
28 1C 034 00011100 FS
29 1D 035 00011101 GS
30 1E 036 00011110 RS
31 1F 037 00011111 US
32 20 040 00100000 (SP)
33 21 041 00100001 !
34 22 042 00100010 "
35 23 043 00100011 #
36 24 044 00100100 $
37 25 045 00100101 %
38 26 046 00100110 &
39 27 047 00100111 '
40 28 050 00101000 (
41 29 051 00101001 )
42 2A 052 00101010 *
43 2B 053 00101011 +
44 2C 054 00101100 ,
45 2D 055 00101101 -
46 2E 056 00101110 .
47 2F 057 00101111 /
48 30 060 00110000 0
49 31 061 00110001 1
50 32 062 00110010 2
51 33 063 00110011 3
52 34 064 00110100 4
53 35 065 00110101 5
54 36 066 00110110 6
55 37 067 00110111 7
56 38 070 00111000 8
57 39 071 00111001 9
58 3A 072 00111010 :
59 3B 073 00111011 ;
60 3C 074 00111100 <
61 3D 075 00111101 =
62 3E 076 00111110 >
63 3F 077 00111111 ?
64 40 100 01000000 @
65 41 101 01000001 A
66 42 102 01000010 B
67 43 103 01000011 C
68 44 104 01000100 D
69 45 105 01000101 E
70 46 106 01000110 F
71 47 107 01000111 G
72 48 110 01001000 H
73 49 111 01001001 I
74 4A 112 01001010 J
75 4B 113 01001011 K
76 4C 114 01001100 L
77 4D 115 01001101 M
78 4E 116 01001110 N
79 4F 117 01001111 O
80 50 120 01010000 P
81 51 121 01010001 Q
82 52 122 01010010 R
83 53 123 01010011 S
84 54 124 01010100 T
85 55 125 01010101 U
86 56 126 01010110 V
87 57 127 01010111 W
88 58 130 01011000 X
89 59 131 01011001 Y
90 5A 132 01011010 Z
91 5B 133 01011011 [
92 5C 134 01011100 \
93 5D 135 01011101 ]
94 5E 136 01011110 ^
95 5F 137 01011111 _
96 60 140 01100000 `
97 61 141 01100001 a
98 62 142 01100010 b
99 63 143 01100011 c
100 64 144 01100100 d
101 65 145 01100101 e
102 66 146 01100110 f
103 67 147 01100111 g
104 68 150 01101000 h
105 69 151 01101001 i
106 6A 152 01101010 j
107 6B 153 01101011 k
108 6C 154 01101100 l
109 6D 155 01101101 m
110 6E 156 01101110 n
111 6F 157 01101111 o
112 70 160 01110000 p
113 71 161 01110001 q
114 72 162 01110010 r
115 73 163 01110011 s
116 74 164 01110100 t
117 75 165 01110101 u
118 76 166 01110110 v
119 77 167 01110111 w
120 78 170 01111000 x
121 79 171 01111001 y
122 7A 172 01111010 z
123 7B 173 01111011 {
124 7C 174 01111100 |
125 7D 175 01111101 }
126 7E 176 01111110 ~
127 7F 177 01111111 DEL

Tips

  • Uppercase A–Z are codes 65–90 and lowercase a–z are 97–122. Adding 32 to an uppercase code gives its lowercase equivalent (e.g. 'A'(65) + 32 = 'a'(97)).
  • Digit characters '0'–'9' have codes 48–57. To convert a digit character to its integer value, use charCode - 48.
  • Codes 0–31 and 127 are control characters (non-printable). Common examples: Line Feed LF = 10, Horizontal Tab HT = 9, Carriage Return CR = 13.
  • HTML-special characters and their codes: &=38, <=60, >=62, "=34. These must be escaped when used inside HTML.
  • Hex notation is common in code: a newline is written \x0A and a space is \x20 in many programming languages.
  • In programming languages, 0x is the hexadecimal prefix (e.g., 0x41 = 65 = 'A'). Similarly, 0b denotes binary (e.g., 0b01000001) and 0o denotes octal (Python / modern JS).

Side Note — Why ASCII is 7-Bit

ASCII (American Standard Code for Information Interchange) was standardized in 1963 by the ASA (now ANSI). Evolved from telegraph codes, it was designed to unify data exchange between different computer systems.

The 7-bit (128 character) design was intentional. Serial communication of the era conventionally used the 8th bit as a parity bit for error detection. Keeping data within 7 bits allowed the remaining bit to coexist with parity checking.

UTF-8 is fully backward-compatible with ASCII: code points 0x00–0x7F are encoded with identical byte values, so any ASCII text is valid UTF-8 without any conversion needed.