What is the ASCII table?
The ASCII table lists the 128 characters of the American Standard Code for Information Interchange, numbered 0 to 127, and the number a computer uses for each. Capital A is 65, a space is 32, a line feed is 10. ASCII was standardised in the 1960s (RFC 20 reproduces it), and its 128 codes are still the first 128 code points of Unicode and the single-byte characters of UTF-8.
This page lists every code with its decimal value, its hex value and the character itself, or the control code's short name where there's nothing to print.
Searching the table
- Leave the search box empty and click View to see all 128 rows.
- Or start typing. The results update with every keystroke.
- Copy the rows you need.
Each row reads like 65 0x41 A: decimal, hex, character. The search follows a few fixed rules, with exact matches listed first:
- A single character finds exactly that character, and case matters:
agives only97 0x61 a,Agives only 65. A single digit also lists the control code with that decimal number after it, so9shows the digit 9 (57) and then TAB (9). Typing a single space finds Space. - A plain number is a decimal code:
65finds A and nothing else. - A
0xor\xprefix means hex:0x41finds A,0x7ffinds DEL. Bare hex that contains a letter, such as7for1b, is read as hex too. - A name is matched without regard to case:
esc,del,space,ff. Common aliases work as well:nullfinds NUL,newlineor\nfinds LF,\tfinds TAB,\rorcarriage returnfinds CR,escapefinds ESC,deletefinds DEL. - Part of a control name comes after any exact match:
dclists DC1 to DC4.
How the 128 codes are organised
| Range (decimal) | Hex | Contents |
|---|---|---|
| 0-31 | 0x00-0x1f | Control characters |
| 32 | 0x20 | Space |
| 33-47 | 0x21-0x2f | Punctuation and symbols ! " # $ % & ' ( ) * + , - . / |
| 48-57 | 0x30-0x39 | Digits 0 to 9 |
| 58-64 | 0x3a-0x40 | : ; < = > ? @ |
| 65-90 | 0x41-0x5a | Uppercase A to Z |
| 91-96 | 0x5b-0x60 | [ \ ] ^ _ and the backtick |
| 97-122 | 0x61-0x7a | Lowercase a to z |
| 123-126 | 0x7b-0x7e | {, the vertical bar, } and ~ |
| 127 | 0x7f | DEL |
The layout is deliberate. A digit's code minus 48 gives its value, so '7' - '0' is 7 in C. Lowercase letters sit exactly 32 above their capitals, so switching case flips a single bit.
Control characters you still meet
Most of the 33 control codes were designed for teleprinters and are rarely used now. A handful matter every day:
| Code | Hex | Name | Where it shows up |
|---|---|---|---|
| 0 | 0x00 | NUL | String terminator in C |
| 7 | 0x07 | BEL | Makes a terminal beep |
| 8 | 0x08 | BS | Backspace |
| 9 | 0x09 | TAB | Tab-separated data, indentation |
| 10 | 0x0a | LF | Line ending on Linux and macOS |
| 13 | 0x0d | CR | Paired with LF as CRLF on Windows and in HTTP headers |
| 27 | 0x1b | ESC | Starts ANSI terminal color sequences |
| 127 | 0x7f | DEL | Delete |
CRLF line endings are required between HTTP/1.1 header lines by RFC 9112, which is why a stray bare LF can break a hand-written request. Unicode keeps these names for U+0000 to U+001F in its C0 Controls chart.
What the table doesn't cover
- Codes 128-255. "Extended ASCII" was never one standard; Windows-1252, ISO 8859-1 and old DOS code pages all disagree. This table sticks to real ASCII.
- Octal and binary columns. Only decimal and hex are listed. Use the base converters below if you need the others.
- Unicode lookups. Searching for
éor an emoji returns "No matching ASCII characters found." - Partial matches on letters and symbols. Only control names are searched by fragment; a multi-character string such as
abisn't split into its characters.
The table is generated in your browser from a fixed list, and your searches aren't sent anywhere.
Related tools
- Text to ASCII converts a whole string to its codes in one go.
- ASCII to text turns a list of codes back into readable characters.
- Hex to ASCII decodes a hex dump straight to text.
- Decimal to binary shows the bit pattern of any code from the table.
Last updated