🇺🇸English
🇨🇳简体中文
🇺🇸English

ASCII Table – Complete Character Encoding Reference & Converter

The definitive ASCII code chart featuring control characters, printable symbols, and extended ASCII set. Includes decimal, octal, hex, and binary number representations with HTML entity references.

ASCII Control Characters

DecimalOctalHexBinarySymbolHTML EntityDescription
00000000000000NUL�Null character
10010100000001SOHStart of Heading
20020200000010STXStart of Text
30030300000011ETXEnd of Text
40040400000100EOTEnd of Transmission
50050500000101ENQEnquiry
60060600000110ACKAcknowledge
70070700000111BELBell
80100800001000BSBackspace
90110900001001HT	Horizontal Tab
100120A00001010LF
Line Feed
110130B00001011VTVertical Tab
120140C00001100FFForm Feed
130150D00001101CR
Carriage Return
140160E00001110SOShift Out
150170F00001111SIShift In
160201000010000DLEData Link Escape
170211100010001DC1Device Control 1
180221200010010DC2Device Control 2
190231300010011DC3Device Control 3
200241400010100DC4Device Control 4
210251500010101NAKNegative Acknowledge
220261600010110SYNSynchronous Idle
230271700010111ETBEnd of Transmission Block
240301800011000CANCancel
250311900011001EMEnd of Medium
260321A00011010SUBSubstitute
270331B00011011ESCEscape
280341C00011100FSFile Separator
290351D00011101GSGroup Separator
300361E00011110RSRecord Separator
310371F00011111USUnit Separator

ASCII Printable Characters

DecimalOctalHexBinarySymbolHTML EntityDescription
320402000100000 Space
330412100100001!!Exclamation mark
340422200100010""Double quote
350432300100011##Hash
360442400100100$$Dollar sign
370452500100101%%Percent sign
380462600100110&&Ampersand
390472700100111''Single quote
400502800101000((Left parenthesis
410512900101001))Right parenthesis
420522A00101010**Asterisk
430532B00101011++Plus sign
440542C00101100,,Comma
450552D00101101--Hyphen or minus
460562E00101110..Period or decimal point
470572F00101111//Slash
480603000110000000
490613100110001111
500623200110010222
510633300110011333
520643400110100444
530653500110101555
540663600110110666
550673700110111777
560703800111000888
570713900111001999
580723A00111010::Colon
590733B00111011;&#059;Semicolon
600743C00111100<&amp;#060;Less than
610753D00111101=&amp;#061;Equals
620763E00111110>&amp;#062;Greater than
630773F00111111?&amp;#063;Question mark
641004001000000@&amp;#064;At sign
651014101000001A&amp;#065;Uppercase A
661024201000010B&amp;#066;Uppercase B
671034301000011C&amp;#067;Uppercase C
681044401000100D&amp;#068;Uppercase D
691054501000101E&amp;#069;Uppercase E
701064601000110F&amp;#070;Uppercase F
711074701000111G&amp;#071;Uppercase G
721104801001000H&amp;#072;Uppercase H
731114901001001I&amp;#073;Uppercase I
741124A01001010J&amp;#074;Uppercase J
751134B01001011K&amp;#075;Uppercase K
761144C01001100L&amp;#076;Uppercase L
771154D01001101M&amp;#077;Uppercase M
781164E01001110N&amp;#078;Uppercase N
791174F01001111O&amp;#079;Uppercase O
801205001010000P&amp;#080;Uppercase P
811215101010001Q&amp;#081;Uppercase Q
821225201010010R&amp;#082;Uppercase R
831235301010011S&amp;#083;Uppercase S
841245401010100T&amp;#084;Uppercase T
851255501010101U&amp;#085;Uppercase U
861265601010110V&amp;#086;Uppercase V
871275701010111W&amp;#087;Uppercase W
881305801011000X&amp;#088;Uppercase X
891315901011001Y&amp;#089;Uppercase Y
901325A01011010Z&amp;#090;Uppercase Z
911335B01011011[&amp;#091;Left bracket
921345C01011100\&amp;#092;Backslash
931355D01011101]&amp;#093;Right bracket
941365E01011110^&amp;#094;Caret or circumflex
951375F01011111_&amp;#095;Underscore
961406001100000`&amp;#096;Grave accent
971416101100001a&amp;#097;Lowercase a
981426201100010b&amp;#098;Lowercase b
991436301100011c&amp;#099;Lowercase c
1001446401100100d&amp;#100;Lowercase d
1011456501100101e&amp;#101;Lowercase e
1021466601100110f&amp;#102;Lowercase f
1031476701100111g&amp;#103;Lowercase g
1041506801101000h&amp;#104;Lowercase h
1051516901101001i&amp;#105;Lowercase i
1061526A01101010j&amp;#106;Lowercase j
1071536B01101011k&amp;#107;Lowercase k
1081546C01101100l&amp;#108;Lowercase l
1091556D01101101m&amp;#109;Lowercase m
1101566E01101110n&amp;#110;Lowercase n
1111576F01101111o&amp;#111;Lowercase o
1121607001110000p&amp;#112;Lowercase p
1131617101110001q&amp;#113;Lowercase q
1141627201110010r&amp;#114;Lowercase r
1151637301110011s&amp;#115;Lowercase s
1161647401110100t&amp;#116;Lowercase t
1171657501110101u&amp;#117;Lowercase u
1181667601110110v&amp;#118;Lowercase v
1191677701110111w&amp;#119;Lowercase w
1201707801111000x&amp;#120;Lowercase x
1211717901111001y&amp;#121;Lowercase y
1221727A01111010z&amp;#122;Lowercase z
1231737B01111011{&amp;#123;Left curly brace
1241747C01111100|&amp;#124;Vertical bar
1251757D01111101}&amp;#125;Right curly brace
1261767E01111110~&amp;#126;Tilde
1271777F01111111&amp;#127;Delete

Extended ASCII Characters

DecimalOctalHexBinarySymbolHTML EntityDescription
1282008010000000&amp;#128;Euro sign
1292018110000001
1302028210000010&amp;#130;Single low-9 quotation mark
1312038310000011ƒ&amp;#131;Latin small letter f with hook
1322048410000100&amp;#132;Double low-9 quotation mark
1332058510000101&amp;#133;Horizontal ellipsis
1342068610000110&amp;#134;Dagger
1352078710000111&amp;#135;Double dagger
1362108810001000ˆ&amp;#136;Modifier letter circumflex accent
1372118910001001&amp;#137;Per mille sign
1382128A10001010Š&amp;#138;Latin capital letter S with caron
1392138B10001011&amp;#139;Single left-pointing angle quotation mark
1402148C10001100Œ&amp;#140;Latin capital ligature OE
1412158D10001101
1422168E10001110Ž&amp;#142;Latin capital letter Z with caron
1432178F10001111
1442209010010000
1452219110010001&amp;#145;Left single quotation mark
1462229210010010&amp;#146;Right single quotation mark
1472239310010011&amp;#147;Left double quotation mark
1482249410010100&amp;#148;Right double quotation mark
1492259510010101&amp;#149;Bullet
1502269610010110&amp;#150;En dash
1512279710010111&amp;#151;Em dash
1522309810011000˜&amp;#152;Small tilde
1532319910011001&amp;#153;Trade mark sign
1542329A10011010š&amp;#154;Latin small letter s with caron
1552339B10011011&amp;#155;Single right-pointing angle quotation mark
1562349C10011100œ&amp;#156;Latin small ligature oe
1572359D10011101
1582369E10011110ž&amp;#158;Latin small letter z with caron
1592379F10011111Ÿ&amp;#159;Latin capital letter Y with diaeresis
160240A010100000&amp;#160;Non-breaking space
161241A110100001¡&amp;#161;Inverted exclamation mark
162242A210100010¢&amp;#162;Cent sign
163243A310100011£&amp;#163;Pound sign
164244A410100100¤&amp;#164;Currency sign
165245A510100101¥&amp;#165;Yen sign
166246A610100110¦&amp;#166;Broken bar
167247A710100111§&amp;#167;Section sign
168250A810101000¨&amp;#168;Diaeresis
169251A910101001©&amp;#169;Copyright sign
170252AA10101010ª&amp;#170;Feminine ordinal indicator
171253AB10101011«&amp;#171;Left-pointing double angle quotation mark
172254AC10101100¬&amp;#172;Not sign
173255AD10101101&amp;#173;Soft hyphen
174256AE10101110®&amp;#174;Registered sign
175257AF10101111¯&amp;#175;Macron
176260B010110000°&amp;#176;Degree sign
177261B110110001±&amp;#177;Plus-minus sign
178262B210110010²&amp;#178;Superscript two
179263B310110011³&amp;#179;Superscript three
180264B410110100´&amp;#180;Acute accent
181265B510110101µ&amp;#181;Micro sign
182266B610110110&amp;#182;Pilcrow sign
183267B710110111·&amp;#183;Middle dot
184270B810111000¸&amp;#184;Cedilla
185271B910111001¹&amp;#185;Superscript one
186272BA10111010º&amp;#186;Masculine ordinal indicator
187273BB10111011»&amp;#187;Right-pointing double angle quotation mark
188274BC10111100¼&amp;#188;Vulgar fraction one quarter
189275BD10111101½&amp;#189;Vulgar fraction one half
190276BE10111110¾&amp;#190;Vulgar fraction three quarters
191277BF10111111¿&amp;#191;Inverted question mark
192300C011000000À&amp;#192;Latin capital letter A with grave
193301C111000001Á&amp;#193;Latin capital letter A with acute
194302C211000010Â&amp;#194;Latin capital letter A with circumflex
195303C311000011Ã&amp;#195;Latin capital letter A with tilde
196304C411000100Ä&amp;#196;Latin capital letter A with diaeresis
197305C511000101Å&amp;#197;Latin capital letter A with ring above
198306C611000110Æ&amp;#198;Latin capital letter AE
199307C711000111Ç&amp;#199;Latin capital letter C with cedilla
200310C811001000È&amp;#200;Latin capital letter E with grave
201311C911001001É&amp;#201;Latin capital letter E with acute
202312CA11001010Ê&amp;#202;Latin capital letter E with circumflex
203313CB11001011Ë&amp;#203;Latin capital letter E with diaeresis
204314CC11001100Ì&amp;#204;Latin capital letter I with grave
205315CD11001101Í&amp;#205;Latin capital letter I with acute
206316CE11001110Î&amp;#206;Latin capital letter I with circumflex
207317CF11001111Ï&amp;#207;Latin capital letter I with diaeresis
208320D011010000Ð&amp;#208;Latin capital letter Eth
209321D111010001Ñ&amp;#209;Latin capital letter N with tilde
210322D211010010Ò&amp;#210;Latin capital letter O with grave
211323D311010011Ó&amp;#211;Latin capital letter O with acute
212324D411010100Ô&amp;#212;Latin capital letter O with circumflex
213325D511010101Õ&amp;#213;Latin capital letter O with tilde
214326D611010110Ö&amp;#214;Latin capital letter O with diaeresis
215327D711010111×&amp;#215;Multiplication sign
216330D811011000Ø&amp;#216;Latin capital letter O with stroke
217331D911011001Ù&amp;#217;Latin capital letter U with grave
218332DA11011010Ú&amp;#218;Latin capital letter U with acute
219333DB11011011Û&amp;#219;Latin capital letter U with circumflex
220334DC11011100Ü&amp;#220;Latin capital letter U with diaeresis
221335DD11011101Ý&amp;#221;Latin capital letter Y with acute
222336DE11011110Þ&amp;#222;Latin capital letter Thorn
223337DF11011111ß&amp;#223;Latin small letter sharp s
224340E011100000à&amp;#224;Latin small letter a with grave
225341E111100001á&amp;#225;Latin small letter a with acute
226342E211100010â&amp;#226;Latin small letter a with circumflex
227343E311100011ã&amp;#227;Latin small letter a with tilde
228344E411100100ä&amp;#228;Latin small letter a with diaeresis
229345E511100101å&amp;#229;Latin small letter a with ring above
230346E611100110æ&amp;#230;Latin small letter ae
231347E711100111ç&amp;#231;Latin small letter c with cedilla
232350E811101000è&amp;#232;Latin small letter e with grave
233351E911101001é&amp;#233;Latin small letter e with acute
234352EA11101010ê&amp;#234;Latin small letter e with circumflex
235353EB11101011ë&amp;#235;Latin small letter e with diaeresis
236354EC11101100ì&amp;#236;Latin small letter i with grave
237355ED11101101í&amp;#237;Latin small letter i with acute
238356EE11101110î&amp;#238;Latin small letter i with circumflex
239357EF11101111ï&amp;#239;Latin small letter i with diaeresis
240360F011110000ð&amp;#240;Latin small letter eth
241361F111110001ñ&amp;#241;Latin small letter n with tilde
242362F211110010ò&amp;#242;Latin small letter o with grave
243363F311110011ó&amp;#243;Latin small letter o with acute
244364F411110100ô&amp;#244;Latin small letter o with circumflex
245365F511110101õ&amp;#245;Latin small letter o with tilde
246366F611110110ö&amp;#246;Latin small letter o with diaeresis
247367F711110111÷&amp;#247;Division sign
248370F811111000ø&amp;#248;Latin small letter o with stroke
249371F911111001ù&amp;#249;Latin small letter u with grave
250372FA11111010ú&amp;#250;Latin small letter u with acute
251373FB11111011û&amp;#251;Latin small letter u with circumflex
252374FC11111100ü&amp;#252;Latin small letter u with diaeresis
253375FD11111101ý&amp;#253;Latin small letter y with acute
254376FE11111110þ&amp;#254;Latin small letter thorn
255377FF11111111ÿ&amp;#255;Latin small letter y with diaeresis

What is ASCII?

ASCII, short for American Standard Code for Information Interchange, is a character encoding standard for electronic communication. First developed in the early 1960s and formally standardized in 1967, ASCII was designed to create a universal framework that would allow different computer systems and devices to exchange text-based information reliably. Before ASCII, computer manufacturers used proprietary encoding schemes that made cross-system communication difficult and error-prone. The introduction of ASCII solved this by defining a consistent mapping between binary values and human-readable characters. The standard ASCII character set uses exactly 7 bits to represent 128 unique characters, covering the English alphabet in both uppercase and lowercase, the digits 0 through 9, a selection of punctuation marks and mathematical symbols, and a block of 32 control codes originally intended for teletypewriter operations. Understanding what ASCII is and what does ASCII stand for reveals its foundational role in computing history: it became the bedrock upon which modern character encoding standards like Unicode and UTF-8 were built, and its core 128 characters remain perfectly preserved within UTF-8 to ensure backward compatibility across the entire internet. Today, despite the global dominance of multilingual encoding systems, the ASCII meaning remains critically important in programming, web development, data serialization, and low-level system operations.

ASCII Character Set Structure and Encoding Principles

Encoding Range and Character Categories

The 128 positions in the standard ASCII character set are logically organized into distinct functional groups based on their numeric codes. The first group, spanning decimal values 0 through 31 and also including position 127, consists of non-printable control characters. These codes were originally devised to manage the physical operation of teletype machines and paper tape readers. Among the most historically significant ASCII codes in this range are the carriage return, which moves the print head to the beginning of a line; the line feed, which advances the paper by one line; the bell character that triggers an audible alert; and the escape character, which signals the start of an escape sequence used for terminal control. The second group of ASCII codes, occupying decimal positions 32 through 126, are the printable characters that form the visible text we use every day. This block starts with the space character, often overlooked but absolutely essential for word separation, followed by common punctuation, the ten numerical digits 0 through 9 at codes 48 through 57, a short block of additional symbols, the uppercase letters A through Z mapped to codes 65 through 90, another symbol block, and finally the lowercase letters a through z occupying codes 97 through 122. The extended ASCII table, sometimes referred to as the high ASCII characters, uses an eighth bit to provide 128 additional code points from 128 through 255. Unlike the rigidly standardized core set, this extended region has historically varied between hardware platforms and regional configurations; the ISO 8859-1 Latin-1 standard represents the most widely adopted extended ASCII characters table, populating this upper range with accented letters for Western European languages, additional punctuation, mathematical operators, and graphic symbols.

Number Systems and the ASCII Table Binary Relationship

Every ASCII code exists simultaneously as a value in four different number systems, and proficiency in reading these representations is fundamental to many technical disciplines. The decimal representation is the most intuitive for human understanding of the ASCII value table and forms the basis for character arithmetic in high-level programming. The octal representation, though less common today, preserves an important legacy from the era of 12-bit and 36-bit computer architectures where octal digits naturally grouped bits into sets of three. The hexadecimal representation has become the predominant format for displaying ASCII values in modern contexts because two hex digits map precisely to one byte. This makes the hex table indispensable for reading memory dumps, network packet captures, and binary file formats. The binary representation reveals the actual bit pattern stored in memory or transmitted across a wire, a perspective that is essential for understanding bitwise operations, hardware design, and certain classes of software bugs. The specific arrangement of bits within a 7-bit or 8-bit frame also explains the arithmetic relationship between uppercase and lowercase letters: the only difference is a single bit at position 5, meaning you can toggle case by flipping that bit or add or subtract 32 in decimal. This elegant design principle within the ASCII code table simplified the construction of early computer terminals and continues to be exploited in modern text processing algorithms.

How to Use This ASCII Character Table

Browse and Search — Navigate through the three categorized sections: control characters, printable characters, and extended ASCII characters. Each table provides a complete seven-column cross-reference so you can look up any ASCII character by its symbol, decimal number, or code in another base.

Multi-Base Reference — The ASCII table displays decimal, octal, hexadecimal, and binary representations side by side, making it a versatile reference whether you are debugging a hex dump, writing a bitmask, or performing character-to-integer conversions in your source code.

HTML Entity Lookup — For web developers, every printable character row includes its corresponding HTML entity code in the format necessary for both numeric character references and safe rendering of reserved XML and HTML delimiter characters.

Symbol Descriptions — Each control character and special symbol is accompanied by a clear English description, helping you understand the original functional purpose of non-printable codes and the names of typographic marks.

Quick Location — The printable characters section follows the logical ordering of digits, uppercase letters, and lowercase letters, enabling you to rapidly locate any character by its ASCII code or positional context within the standard code chart.

Practical Applications of ASCII Codes

Software Development — Understanding ASCII character codes is fundamental for string manipulation, input validation, and data conversion routines. Whether you are writing a parser, implementing a protocol, or performing case-insensitive comparisons, the numeric relationships embedded in the ASCII character set form the basis of countless algorithms.

Web Design and Security — HTML entities derived from the ASCII standard allow developers to safely display reserved characters such as angle brackets and ampersands within web pages. Proper use of these codes is essential for preventing cross-site scripting vulnerabilities and ensuring valid markup.

Network Communication — Classic internet protocols including SMTP for email, HTTP for web transfers, and FTP for file sharing all rely on ASCII control codes for command delimitation and session management. Protocol debugging often requires interpreting raw ASCII streams, where knowledge of the ASCII table hex values becomes indispensable.

Data Storage and Encoding Conversion — Plain text files are the most portable data format precisely because they are encoded in ASCII or its supersets. Understanding the ASCII code table helps developers diagnose character corruption issues that arise from mismatched encoding assumptions between systems, databases, and applications.

Embedded Systems and Hardware — Control characters retain their original functions in the realm of embedded development, where serial communication with microcontrollers, sensors, and legacy industrial equipment frequently employs ASCII-based command sets with start-of-text and end-of-transmission markers.

Frequently Asked Questions About ASCII

What does ASCII stand for?

ASCII stands for American Standard Code for Information Interchange. This acronym captures the original design goal: to create a national standard encoding that would allow different information processing systems to exchange text data without ambiguity. Adopted in 1967 and last updated in 1986, the ASCII full form reflects its origins as a U.S. federal standard before its subsequent adoption as an international reference through ISO 646.

What are ASCII characters?

ASCII characters are the 128 symbols, letters, digits, and control codes defined by the ASCII standard. They include 33 non-printable control codes that manage device communication and formatting, 95 printable characters that form the visible text of the English language, and the delete control character at position 127. Every ASCII character is uniquely identified by a numeric code between 0 and 127, and this code is consistent across all ASCII-compliant systems, making it the most universally interoperable character set in computing history.

What is the difference between ASCII and Unicode?

ASCII is a 7-bit character encoding that defines exactly 128 characters, which is sufficient only for basic English text and a limited set of control codes. Unicode is a much larger and continuously evolving international standard designed to represent the characters of all the world's writing systems, encompassing over 149,000 characters from modern and historic scripts. Crucially, Unicode's UTF-8 encoding scheme deliberately preserves the ASCII character set as its first 128 positions, meaning that any valid ASCII file is automatically a valid UTF-8 file. This backward compatibility ensures that ASCII codes remain relevant even as Unicode has become the dominant modern encoding.

What are the ASCII values of alphabets?

Uppercase letters are assigned consecutive codes from 65 for 'A' through 90 for 'Z'. Lowercase letters are assigned codes from 97 for 'a' through 122 for 'z'. The consistent 32-decimal difference between uppercase and lowercase ASCII values is a deliberate design choice that simplifies case conversion: to convert a lowercase letter to uppercase, you simply subtract 32, and to convert uppercase to lowercase, add 32. This arithmetic relationship is so fundamental that many programming languages implement case toggling using bitwise operations on the binary representation rather than arithmetic.

What is extended ASCII and how is it different from standard ASCII?

Extended ASCII refers to character encodings that use the full 8-bit range from 128 to 255, adding 128 more characters on top of the standard 7-bit ASCII codes. Unlike the universally consistent standard ASCII set, extended ASCII implementations have varied significantly across hardware platforms and operating systems. The most widely adopted variant is ISO 8859-1, also known as Latin-1, which populates the extended area with accented vowels, additional punctuation, and symbols needed for Western European languages. Other extended ASCII code pages, such as those developed by IBM for its PC line, allocate the upper range differently to support different regional scripts and graphical symbols.

How do I convert ASCII to text and text to ASCII?

Converting ASCII to text involves taking a sequence of ASCII numeric codes and mapping each one to its corresponding character symbol. For instance, the code sequence 72, 101, 108, 108, 111 produces the word "Hello". Conversely, text to ASCII conversion takes each character of a string and outputs its numeric code. In most programming environments, this is straightforward because characters are stored as their ASCII integer values internally. An ASCII to text converter tool or function essentially performs a table lookup, matching each number in the valid range to its character in the ASCII list. Many online tools and built-in programming functions also provide ASCII converter capabilities that support batch conversion and handle multi-base input formats.

What is an ASCII character chart used for?

An ASCII character chart is a reference table that displays the mapping between numeric codes and their corresponding characters in a structured, easy-to-scan format. Programmers consult such charts when debugging raw byte streams, writing encoding conversion routines, or implementing communication protocols. Web developers use ASCII code charts to find HTML entity numbers for special characters and to ensure that their markup remains valid and safe from injection attacks. Students learning computer science fundamentals refer to an ASCII code table to understand how computers represent text internally, while digital forensics analysts and network engineers rely on them when inspecting the raw contents of files and captured network traffic.

Why are ASCII codes important for programming?

ASCII codes form the foundation of text processing in virtually all programming languages. The ability to treat characters as integer values enables efficient sorting, comparison, and mathematical manipulation of text. Functions that test whether a character is a digit, a letter, or whitespace rely on the contiguous arrangement of character ranges in the ASCII set. Cryptographic algorithms, compression routines, and hashing functions all treat text as sequences of numeric codes, making direct reference to the ASCII standard. Furthermore, the concept of the null-terminated string in C and the encoding-aware string types in modern languages are both rooted in the ASCII tradition, making this 7-bit standard an enduring and practical part of daily development work.