ASCII Table Reference
Browse all 128 ASCII characters online for free with our interactive ascii table reference. Instantly look up any character by decimal code, hex value, octal, binary, or description — with click-to-copy and category filters. No signup required.
Browse all 128 ASCII characters with their decimal, hexadecimal, octal, and binary values. Search by character, decimal code, hex value, or description. Click any row to copy the character to your clipboard.
| Dec | Hex | Oct | Binary | Char | Description | Type |
|---|---|---|---|---|---|---|
| 0 | 0x00 | 000 | 0000 0000 | \x00 | NUL (Null) | control |
| 1 | 0x01 | 001 | 0000 0001 | \x01 | SOH (Start of Heading) | control |
| 2 | 0x02 | 002 | 0000 0010 | \x02 | STX (Start of Text) | control |
| 3 | 0x03 | 003 | 0000 0011 | \x03 | ETX (End of Text) | control |
| 4 | 0x04 | 004 | 0000 0100 | \x04 | EOT (End of Transmission) | control |
| 5 | 0x05 | 005 | 0000 0101 | \x05 | ENQ (Enquiry) | control |
| 6 | 0x06 | 006 | 0000 0110 | \x06 | ACK (Acknowledge) | control |
| 7 | 0x07 | 007 | 0000 0111 | \x07 | BEL (Bell) | control |
| 8 | 0x08 | 010 | 0000 1000 | \x08 | BS (Backspace) | control |
| 9 | 0x09 | 011 | 0000 1001 | \x09 | HT (Horizontal Tab) | control |
| 10 | 0x0A | 012 | 0000 1010 | \x0A | LF (Line Feed) | control |
| 11 | 0x0B | 013 | 0000 1011 | \x0B | VT (Vertical Tab) | control |
| 12 | 0x0C | 014 | 0000 1100 | \x0C | FF (Form Feed) | control |
| 13 | 0x0D | 015 | 0000 1101 | \x0D | CR (Carriage Return) | control |
| 14 | 0x0E | 016 | 0000 1110 | \x0E | SO (Shift Out) | control |
| 15 | 0x0F | 017 | 0000 1111 | \x0F | SI (Shift In) | control |
| 16 | 0x10 | 020 | 0001 0000 | \x10 | DLE (Data Link Escape) | control |
| 17 | 0x11 | 021 | 0001 0001 | \x11 | DC1 (Device Control 1) | control |
| 18 | 0x12 | 022 | 0001 0010 | \x12 | DC2 (Device Control 2) | control |
| 19 | 0x13 | 023 | 0001 0011 | \x13 | DC3 (Device Control 3) | control |
| 20 | 0x14 | 024 | 0001 0100 | \x14 | DC4 (Device Control 4) | control |
| 21 | 0x15 | 025 | 0001 0101 | \x15 | NAK (Negative Acknowledge) | control |
| 22 | 0x16 | 026 | 0001 0110 | \x16 | SYN (Synchronous Idle) | control |
| 23 | 0x17 | 027 | 0001 0111 | \x17 | ETB (End of Transmission Block) | control |
| 24 | 0x18 | 030 | 0001 1000 | \x18 | CAN (Cancel) | control |
| 25 | 0x19 | 031 | 0001 1001 | \x19 | EM (End of Medium) | control |
| 26 | 0x1A | 032 | 0001 1010 | \x1A | SUB (Substitute) | control |
| 27 | 0x1B | 033 | 0001 1011 | \x1B | ESC (Escape) | control |
| 28 | 0x1C | 034 | 0001 1100 | \x1C | FS (File Separator) | control |
| 29 | 0x1D | 035 | 0001 1101 | \x1D | GS (Group Separator) | control |
| 30 | 0x1E | 036 | 0001 1110 | \x1E | RS (Record Separator) | control |
| 31 | 0x1F | 037 | 0001 1111 | \x1F | US (Unit Separator) | control |
| 32 | 0x20 | 040 | 0010 0000 | SP (Space) | printable | |
| 33 | 0x21 | 041 | 0010 0001 | ! | ! | printable |
| 34 | 0x22 | 042 | 0010 0010 | " | " | printable |
| 35 | 0x23 | 043 | 0010 0011 | # | # | printable |
| 36 | 0x24 | 044 | 0010 0100 | $ | $ | printable |
| 37 | 0x25 | 045 | 0010 0101 | % | % | printable |
| 38 | 0x26 | 046 | 0010 0110 | & | & | printable |
| 39 | 0x27 | 047 | 0010 0111 | ' | ' | printable |
| 40 | 0x28 | 050 | 0010 1000 | ( | ( | printable |
| 41 | 0x29 | 051 | 0010 1001 | ) | ) | printable |
| 42 | 0x2A | 052 | 0010 1010 | * | * | printable |
| 43 | 0x2B | 053 | 0010 1011 | + | + | printable |
| 44 | 0x2C | 054 | 0010 1100 | , | , | printable |
| 45 | 0x2D | 055 | 0010 1101 | - | - | printable |
| 46 | 0x2E | 056 | 0010 1110 | . | . | printable |
| 47 | 0x2F | 057 | 0010 1111 | / | / | printable |
| 48 | 0x30 | 060 | 0011 0000 | 0 | 0 | printable |
| 49 | 0x31 | 061 | 0011 0001 | 1 | 1 | printable |
| 50 | 0x32 | 062 | 0011 0010 | 2 | 2 | printable |
| 51 | 0x33 | 063 | 0011 0011 | 3 | 3 | printable |
| 52 | 0x34 | 064 | 0011 0100 | 4 | 4 | printable |
| 53 | 0x35 | 065 | 0011 0101 | 5 | 5 | printable |
| 54 | 0x36 | 066 | 0011 0110 | 6 | 6 | printable |
| 55 | 0x37 | 067 | 0011 0111 | 7 | 7 | printable |
| 56 | 0x38 | 070 | 0011 1000 | 8 | 8 | printable |
| 57 | 0x39 | 071 | 0011 1001 | 9 | 9 | printable |
| 58 | 0x3A | 072 | 0011 1010 | : | : | printable |
| 59 | 0x3B | 073 | 0011 1011 | ; | ; | printable |
| 60 | 0x3C | 074 | 0011 1100 | < | < | printable |
| 61 | 0x3D | 075 | 0011 1101 | = | = | printable |
| 62 | 0x3E | 076 | 0011 1110 | > | > | printable |
| 63 | 0x3F | 077 | 0011 1111 | ? | ? | printable |
| 64 | 0x40 | 100 | 0100 0000 | @ | @ | printable |
| 65 | 0x41 | 101 | 0100 0001 | A | A | printable |
| 66 | 0x42 | 102 | 0100 0010 | B | B | printable |
| 67 | 0x43 | 103 | 0100 0011 | C | C | printable |
| 68 | 0x44 | 104 | 0100 0100 | D | D | printable |
| 69 | 0x45 | 105 | 0100 0101 | E | E | printable |
| 70 | 0x46 | 106 | 0100 0110 | F | F | printable |
| 71 | 0x47 | 107 | 0100 0111 | G | G | printable |
| 72 | 0x48 | 110 | 0100 1000 | H | H | printable |
| 73 | 0x49 | 111 | 0100 1001 | I | I | printable |
| 74 | 0x4A | 112 | 0100 1010 | J | J | printable |
| 75 | 0x4B | 113 | 0100 1011 | K | K | printable |
| 76 | 0x4C | 114 | 0100 1100 | L | L | printable |
| 77 | 0x4D | 115 | 0100 1101 | M | M | printable |
| 78 | 0x4E | 116 | 0100 1110 | N | N | printable |
| 79 | 0x4F | 117 | 0100 1111 | O | O | printable |
| 80 | 0x50 | 120 | 0101 0000 | P | P | printable |
| 81 | 0x51 | 121 | 0101 0001 | Q | Q | printable |
| 82 | 0x52 | 122 | 0101 0010 | R | R | printable |
| 83 | 0x53 | 123 | 0101 0011 | S | S | printable |
| 84 | 0x54 | 124 | 0101 0100 | T | T | printable |
| 85 | 0x55 | 125 | 0101 0101 | U | U | printable |
| 86 | 0x56 | 126 | 0101 0110 | V | V | printable |
| 87 | 0x57 | 127 | 0101 0111 | W | W | printable |
| 88 | 0x58 | 130 | 0101 1000 | X | X | printable |
| 89 | 0x59 | 131 | 0101 1001 | Y | Y | printable |
| 90 | 0x5A | 132 | 0101 1010 | Z | Z | printable |
| 91 | 0x5B | 133 | 0101 1011 | [ | [ | printable |
| 92 | 0x5C | 134 | 0101 1100 | \ | \ | printable |
| 93 | 0x5D | 135 | 0101 1101 | ] | ] | printable |
| 94 | 0x5E | 136 | 0101 1110 | ^ | ^ | printable |
| 95 | 0x5F | 137 | 0101 1111 | _ | _ | printable |
| 96 | 0x60 | 140 | 0110 0000 | ` | ` | printable |
| 97 | 0x61 | 141 | 0110 0001 | a | a | printable |
| 98 | 0x62 | 142 | 0110 0010 | b | b | printable |
| 99 | 0x63 | 143 | 0110 0011 | c | c | printable |
| 100 | 0x64 | 144 | 0110 0100 | d | d | printable |
| 101 | 0x65 | 145 | 0110 0101 | e | e | printable |
| 102 | 0x66 | 146 | 0110 0110 | f | f | printable |
| 103 | 0x67 | 147 | 0110 0111 | g | g | printable |
| 104 | 0x68 | 150 | 0110 1000 | h | h | printable |
| 105 | 0x69 | 151 | 0110 1001 | i | i | printable |
| 106 | 0x6A | 152 | 0110 1010 | j | j | printable |
| 107 | 0x6B | 153 | 0110 1011 | k | k | printable |
| 108 | 0x6C | 154 | 0110 1100 | l | l | printable |
| 109 | 0x6D | 155 | 0110 1101 | m | m | printable |
| 110 | 0x6E | 156 | 0110 1110 | n | n | printable |
| 111 | 0x6F | 157 | 0110 1111 | o | o | printable |
| 112 | 0x70 | 160 | 0111 0000 | p | p | printable |
| 113 | 0x71 | 161 | 0111 0001 | q | q | printable |
| 114 | 0x72 | 162 | 0111 0010 | r | r | printable |
| 115 | 0x73 | 163 | 0111 0011 | s | s | printable |
| 116 | 0x74 | 164 | 0111 0100 | t | t | printable |
| 117 | 0x75 | 165 | 0111 0101 | u | u | printable |
| 118 | 0x76 | 166 | 0111 0110 | v | v | printable |
| 119 | 0x77 | 167 | 0111 0111 | w | w | printable |
| 120 | 0x78 | 170 | 0111 1000 | x | x | printable |
| 121 | 0x79 | 171 | 0111 1001 | y | y | printable |
| 122 | 0x7A | 172 | 0111 1010 | z | z | printable |
| 123 | 0x7B | 173 | 0111 1011 | { | { | printable |
| 124 | 0x7C | 174 | 0111 1100 | | | | | printable |
| 125 | 0x7D | 175 | 0111 1101 | } | } | printable |
| 126 | 0x7E | 176 | 0111 1110 | ~ | ~ | printable |
| 127 | 0x7F | 177 | 0111 1111 | \x7F | DEL (Delete) | control |
Why Use Our ASCII Table Reference?
Fast, searchable, and multi-base ASCII character lookup
Instant ASCII Character Lookup
Our ASCII table reference lets you find any character instantly by decimal code, hex value, octal, binary, or description. Search for "65" to find A, "0x41" to find the same, or "carriage" to find CR — all in milliseconds.
Secure ASCII Table Reference Online
Our ASCII table reference runs entirely in your browser with no server requests. Your searches and lookups never leave your device, ensuring complete privacy when you use our ASCII table online.
ASCII Table Reference — No Installation
Use our ASCII table reference directly in any browser with no downloads, plugins, or account required. Look up ASCII character codes from any device — desktop, tablet, or mobile — for free.
Decimal, Hex, Octal, and Binary Values
Our ASCII table reference shows every character in all four number bases simultaneously — decimal, hexadecimal, octal, and binary. Filter by category (printable, control, digits, letters) and click any row to copy the character.
Common Use Cases for ASCII Table Reference
From programming to security — ASCII character lookup for every developer
Programming & Software Development
Developers use our ASCII table reference to look up character codes for string manipulation, character validation, and encoding operations. Find the decimal or hex value of any character instantly for use in code.
Network Protocol & Data Format Analysis
Network engineers and protocol developers use our ASCII table reference to decode raw byte streams, analyze packet data, and understand control characters in network protocols like HTTP, SMTP, and FTP.
Embedded Systems & Microcontroller Programming
Embedded developers use our ASCII table reference to look up character codes for UART communication, LCD display programming, and serial protocol implementation where exact byte values matter.
Cybersecurity & CTF Challenges
Security researchers and CTF participants use our ASCII table reference to decode encoded strings, analyze binary data, and understand character-based encoding schemes in security challenges.
Regular Expression & Text Processing
Developers writing regular expressions use our ASCII table reference to find the exact decimal or hex values for character class ranges, escape sequences, and special character matching.
Computer Science Education
Students and educators use our ASCII table reference to understand character encoding, binary representation, and the relationship between characters and their numeric codes in computer science courses.
Understanding ASCII Character Codes
What ASCII is, how it works, and how to use character codes
What is ASCII?
ASCII (American Standard Code for Information Interchange) is a character encoding standard that assigns a unique number to 128 characters — including letters, digits, punctuation, and control characters. Developed in the 1960s, ASCII uses 7 bits to represent values from 0 to 127. Each character has a decimal code (0–127), a hexadecimal code (0x00–0x7F), an octal code (000–177), and an 8-bit binary representation. Our ASCII table reference shows all four representations simultaneously for every character.
ASCII is the foundation of modern text encoding. Unicode (UTF-8, UTF-16) is backward compatible with ASCII — the first 128 Unicode code points are identical to ASCII. This means ASCII character codes are still relevant in modern programming, network protocols, and data formats.
ASCII Character Categories
- Control Characters (0–31, 127): Non-printable characters used to control devices and data transmission. Includes NUL (0), TAB (9), LF (10), CR (13), ESC (27), and DEL (127). These characters have special meaning in terminals, network protocols, and file formats.
- Printable Characters (32–126): Visible characters including Space (32), digits 0–9 (48–57), uppercase A–Z (65–90), lowercase a–z (97–122), and punctuation/symbols. These are the characters you type on a keyboard.
- Extended ASCII (128–255): Not part of standard ASCII — these are defined by various code pages (ISO 8859, Windows-1252, etc.) and vary by platform. Our ASCII table reference covers the standard 0–127 range.
How to Use ASCII Codes in Programming
- Character to Code: In most languages, you can get the ASCII code of a character using
ord('A')in Python,'A'.charCodeAt(0)in JavaScript, or(int)'A'in C. - Code to Character: Convert a code back to a character using
chr(65)in Python,String.fromCharCode(65)in JavaScript, or(char)65in C. - Hex Escape Sequences: Use hex codes in string literals:
\x41for A,\x0Afor newline (LF),\x09for tab. - Character Ranges: Use decimal ranges for validation: digits are 48–57, uppercase letters are 65–90, lowercase letters are 97–122. The difference between uppercase and lowercase is always 32 (0x20).
Key ASCII Values to Remember
A few ASCII values are worth memorizing: Space = 32, 0 = 48, A = 65, a = 97 (lowercase is uppercase + 32), Tab = 9, Newline (LF) = 10, Carriage Return (CR) = 13, Escape = 27, Delete = 127. The difference between any uppercase letter and its lowercase equivalent is always 32 — this is why toggling bit 5 (0x20) switches case.
Related Tools
JSON to YAML
Convert JSON to YAML format instantly - Free online JSON to YAML converter
XML to YAML
Convert XML to YAML format for configuration migration - Free online XML to YAML converter
CSV to YAML
Convert CSV spreadsheet data to YAML format - Free online CSV to YAML converter
TSV to YAML
Convert TSV tab-separated data to YAML format - Free online TSV to YAML converter
Frequently Asked Questions About ASCII Table Reference
Common questions about ASCII character codes and how to use them
An ASCII table is a reference chart showing all 128 ASCII characters with their corresponding decimal, hexadecimal, octal, and binary values. ASCII (American Standard Code for Information Interchange) assigns a unique number to each character — letters, digits, punctuation, and control characters. Our ASCII table reference is interactive and searchable.
The standard ASCII table contains 128 characters (codes 0–127). This includes 33 control characters (0–31 and 127) and 95 printable characters (32–126). Extended ASCII adds another 128 characters (128–255) that vary by code page, but our reference covers the standard 0–127 range.
The ASCII code for a space character is 32 (decimal), 0x20 (hexadecimal), 040 (octal), and 00100000 (binary). Space is the first printable ASCII character and is commonly used as a delimiter in text processing.
The ASCII codes for uppercase letters (A=65 to Z=90) and lowercase letters (a=97 to z=122) differ by exactly 32. This means you can convert between cases by adding or subtracting 32, or by toggling bit 5 (0x20). For example, A=65 and a=97, B=66 and b=98, and so on.
ASCII control characters are non-printable characters with codes 0–31 and 127. They were originally designed to control teletype machines and data transmission. Common ones include NUL (0), TAB (9), LF/newline (10), CR (13), ESC (27), and DEL (127). Many are still used in modern protocols and file formats.
In Python, use ord("A") to get 65 and chr(65) to get "A". In JavaScript, use "A".charCodeAt(0) for 65 and String.fromCharCode(65) for "A". In C/C++, cast between char and int. In string literals, use hex escapes like \x41 for A or \x0A for newline.
The ASCII code for newline (Line Feed, LF) is 10 (decimal), 0x0A (hex). On Unix/Linux/macOS, a newline is just LF (10). On Windows, a newline is CR+LF (13+10). The Carriage Return (CR) character is ASCII code 13 (0x0D).
Yes. ASCII is the foundation of Unicode — the first 128 Unicode code points (U+0000 to U+007F) are identical to ASCII. UTF-8, the most common text encoding on the web, encodes ASCII characters as single bytes. ASCII codes are used daily in programming, network protocols, file formats, and data processing.
ASCII covers only 128 characters (English letters, digits, and basic symbols). Unicode covers over 140,000 characters from all writing systems worldwide. UTF-8 is backward compatible with ASCII — any ASCII text is valid UTF-8. For modern applications, Unicode (UTF-8) is recommended, but ASCII codes remain relevant for the first 128 characters.