Want a Custom tool for Yourself?

Need a Custom Tool? We build custom tools that can save hours per employee per day.

ASCII Codes Table

Browse a complete ASCII table with control characters, symbols, and codes in decimal, hex, binary, and HTML forms for quick reference.

ASCII Codes Table

Dec Hex Binary HTML Char Description
0 00 00000000 � NUL Null
1 01 00000001  SOH Start of Heading
2 02 00000010  STX Start of Text
3 03 00000011  ETX End of Text
4 04 00000100  EOT End of Transmission
5 05 00000101  ENQ Enquiry
6 06 00000110  ACK Acknowledge
7 07 00000111  BEL Bell
8 08 00001000  BS Backspace
9 09 00001001 	 HT Horizontal Tab
10 0A 00001010 
 LF Line Feed
11 0B 00001011  VT Vertical Tab
12 0C 00001100  FF Form Feed
13 0D 00001101 
 CR Carriage Return
14 0E 00001110  SO Shift Out
15 0F 00001111  SI Shift In
16 10 00010000  DLE Data Link Escape
17 11 00010001  DC1 Device Control 1
18 12 00010010  DC2 Device Control 2
19 13 00010011  DC3 Device Control 3
20 14 00010100  DC4 Device Control 4
21 15 00010101  NAK Negative Acknowledge
22 16 00010110  SYN Synchronize
23 17 00010111  ETB End of Transmission Block
24 18 00011000  CAN Cancel
25 19 00011001  EM End of Medium
26 1A 00011010  SUB Substitute
27 1B 00011011  ESC Escape
28 1C 00011100  FS File Separator
29 1D 00011101  GS Group Separator
30 1E 00011110  RS Record Separator
31 1F 00011111  US Unit Separator
32 20 00100000   space Space
33 21 00100001 ! ! exclamation mark
34 22 00100010 " " double quote
35 23 00100011 # # number
36 24 00100100 $ $ dollar
37 25 00100101 % % percent
38 26 00100110 & & ampersand
39 27 00100111 ' ' single quote
40 28 00101000 ( ( left parenthesis
41 29 00101001 ) ) right parenthesis
42 2A 00101010 * * asterisk
43 2B 00101011 + + plus
44 2C 00101100 , , comma
45 2D 00101101 - - minus
46 2E 00101110 . . period
47 2F 00101111 / / slash
48 30 00110000 0 0 zero
49 31 00110001 1 1 one
50 32 00110010 2 2 two
51 33 00110011 3 3 three
52 34 00110100 4 4 four
53 35 00110101 5 5 five
54 36 00110110 6 6 six
55 37 00110111 7 7 seven
56 38 00111000 8 8 eight
57 39 00111001 9 9 nine
58 3A 00111010 : : colon
59 3B 00111011 &#59; ; semicolon
60 3C 00111100 &#60; < less than
61 3D 00111101 &#61; = equality sign
62 3E 00111110 &#62; > greater than
63 3F 00111111 &#63; ? question mark
64 40 01000000 &#64; @ at sign
65 41 01000001 &#65; A  
66 42 01000010 &#66; B  
67 43 01000011 &#67; C  
68 44 01000100 &#68; D  
69 45 01000101 &#69; E  
70 46 01000110 &#70; F  
71 47 01000111 &#71; G  
72 48 01001000 &#72; H  
73 49 01001001 &#73; I  
74 4A 01001010 &#74; J  
75 4B 01001011 &#75; K  
76 4C 01001100 &#76; L  
77 4D 01001101 &#77; M  
78 4E 01001110 &#78; N  
79 4F 01001111 &#79; O  
80 50 01010000 &#80; P  
81 51 01010001 &#81; Q  
82 52 01010010 &#82; R  
83 53 01010011 &#83; S  
84 54 01010100 &#84; T  
85 55 01010101 &#85; U  
86 56 01010110 &#86; V  
87 57 01010111 &#87; W  
88 58 01011000 &#88; X  
89 59 01011001 &#89; Y  
90 5A 01011010 &#90; Z  
91 5B 01011011 &#91; [ left square bracket
92 5C 01011100 &#92; \ backslash
93 5D 01011101 &#93; ] right square bracket
94 5E 01011110 &#94; ^ caret / circumflex
95 5F 01011111 &#95; _ underscore
96 60 01100000 &#96; ` grave / accent
97 61 01100001 &#97; a  
98 62 01100010 &#98; b  
99 63 01100011 &#99; c  
100 64 01100100 &#100; d  
101 65 01100101 &#101; e  
102 66 01100110 &#102; f  
103 67 01100111 &#103; g  
104 68 01101000 &#104; h  
105 69 01101001 &#105; i  
106 6A 01101010 &#106; j  
107 6B 01101011 &#107; k  
108 6C 01101100 &#108; l  
109 6D 01101101 &#109; m  
110 6E 01101110 &#110; n  
111 6F 01101111 &#111; o  
112 70 01110000 &#112; p  
113 71 01110001 &#113; q  
114 72 01110010 &#114; r  
115 73 01110011 &#115; s  
116 74 01110100 &#116; t  
117 75 01110101 &#117; u  
118 76 01110110 &#118; v  
119 77 01110111 &#119; w  
120 78 01111000 &#120; x  
121 79 01111001 &#121; y  
122 7A 01111010 &#122; z  
123 7B 01111011 &#123; { left curly bracket
124 7C 01111100 &#124; | vertical bar
125 7D 01111101 &#125; } right curly bracket
126 7E 01111110 &#126; ~ tilde
127 7F 01111111 &#127; DEL delete

Last updated: February 4, 2026

Created by: Eon Tools Dev Team

Reviewed by: Bhabin Khadka



What this table shows

This is the complete ASCII table, all 128 codes from 0 to 127 in one place. For every code you get the character it stands for, the same code written several ways, in decimal, hex, and binary, the HTML code for putting it on a web page, and a short description. It is meant as a reference you can scan whenever you need to look up what a code is, or which code a character has.

How to read the columns

Each row is one character, shown from several angles so whichever form you have in front of you, you can find it. The Dec column is the code as an ordinary decimal number, the everyday way to refer to a character, where A is 65. The Hex column is that same number in base 16, the form you meet most in programming. The Binary column is the number in base 2, the eight bits a computer actually stores. The HTML column is the code that displays the character safely on a web page. The Char column is the character itself, and the Description names it, which matters most for the codes that have no visible symbol.

Two halves: printable and control

The table really has two natures. The larger, friendlier half is the printable characters, codes 32 to 126: the space, the digits, the capital and lowercase letters, and the punctuation. These are the ones you can see and type, and a few landmarks are worth carrying in your head, since the rest follow from them: a space is 32, the digit 0 is 48, capital A is 65, and lowercase a is 97.

The other half is the control characters, codes 0 to 31 along with 127, and these are the curious ones with names like NUL, BEL, and ESC rather than symbols. They date from the days of teleprinters and were never meant to print. Instead they gave instructions: the two you still meet constantly are carriage return and line feed, the codes that end a line of text. The Description column is there mainly for these, to tell you what each invisible code was for.

Using the codes

A code from this table is the bridge between a character and a number, and you reach for it whenever a task crosses that bridge: working with text in code, building a simple cipher, checking data byte by byte, or placing a character in a web page using its HTML code. If you want to convert a whole piece of text into these codes rather than look them up one at a time, the Text to ASCII tool does that automatically. And it is worth knowing that ASCII is not a dead standard tucked in a corner: the modern system nearly everything uses, UTF-8, was built so its first 128 characters are exactly these, which is why this small table still underpins so much.

Questions people ask

How many ASCII characters are there?

128, numbered 0 to 127. Of those, 95 are printable characters you can see and type, and the rest are control characters that give instructions rather than showing a symbol.

What is a control character?

One of the codes from 0 to 31, plus 127, that was never meant to print. They carry instructions instead, like the carriage return and line feed that end a line of text.

What are the codes for letters and digits?

Capital A to Z run from 65 to 90, lowercase a to z from 97 to 122, and the digits 0 to 9 from 48 to 57. A space is 32.

References

  1. Cerf, V. (1969). RFC 20: ASCII format for Network Interchange. Internet Engineering Task Force (IETF). https://www.rfc-editor.org/rfc/rfc20


Bhabin Khadka

Bhabin Khadka is a software engineer and graduate student at the University of New England with experience in backend development and scalable systems. He has a particular interest in file systems and the kinds of technical utilities that depend on dependable handling of structured data. At Eon Tools, he reviews file and document tools, as well as encode and decode tools.