ASCII Hex Table
Every standard ASCII character (0-127) with its hex and decimal code — a quick reference for reading raw byte dumps.
How to Read This Table
Codes 0-31 and 127 are non-printable control characters, shown here by their standard abbreviation (like BEL for bell, or DEL for delete) since they have no visible glyph. Codes 32-126 are the printable characters — letters, digits, punctuation, and space.
Where This Table Actually Comes Up
Identifying an Unexpected Byte in Text Data
Looking up a hex byte that shows up unexpectedly in what should be plain text — like 0x0D or 0x0A appearing where you didn't expect a line ending — quickly explains what it actually is.
0x0D = CR, 0x0A = LF
Decoding a Raw Protocol or File Header
Many text-based protocols and file formats use specific control characters as delimiters or markers — recognizing them by their hex code speeds up manual protocol debugging.
0x1E (RS) as a record separator
Writing a String Literal With an Escape Code
Confirming the exact hex or decimal value behind an escape sequence like \t or \n before hardcoding it in a lower-level context that expects the raw byte value.
\t = 0x09 (TAB)
Full ASCII Table: 0-127
| Character | Hex | Decimal |
|---|---|---|
| NUL | 0x00 | 0 |
| SOH | 0x01 | 1 |
| STX | 0x02 | 2 |
| ETX | 0x03 | 3 |
| EOT | 0x04 | 4 |
| ENQ | 0x05 | 5 |
| ACK | 0x06 | 6 |
| BEL | 0x07 | 7 |
| BS | 0x08 | 8 |
| TAB | 0x09 | 9 |
| LF | 0x0A | 10 |
| VT | 0x0B | 11 |
| FF | 0x0C | 12 |
| CR | 0x0D | 13 |
| SO | 0x0E | 14 |
| SI | 0x0F | 15 |
| DLE | 0x10 | 16 |
| DC1 | 0x11 | 17 |
| DC2 | 0x12 | 18 |
| DC3 | 0x13 | 19 |
| DC4 | 0x14 | 20 |
| NAK | 0x15 | 21 |
| SYN | 0x16 | 22 |
| ETB | 0x17 | 23 |
| CAN | 0x18 | 24 |
| EM | 0x19 | 25 |
| SUB | 0x1A | 26 |
| ESC | 0x1B | 27 |
| FS | 0x1C | 28 |
| GS | 0x1D | 29 |
| RS | 0x1E | 30 |
| US | 0x1F | 31 |
| SPACE | 0x20 | 32 |
| ! | 0x21 | 33 |
| " | 0x22 | 34 |
| # | 0x23 | 35 |
| $ | 0x24 | 36 |
| % | 0x25 | 37 |
| & | 0x26 | 38 |
| ' | 0x27 | 39 |
| ( | 0x28 | 40 |
| ) | 0x29 | 41 |
| * | 0x2A | 42 |
| + | 0x2B | 43 |
| , | 0x2C | 44 |
| - | 0x2D | 45 |
| . | 0x2E | 46 |
| / | 0x2F | 47 |
| 0 | 0x30 | 48 |
| 1 | 0x31 | 49 |
| 2 | 0x32 | 50 |
| 3 | 0x33 | 51 |
| 4 | 0x34 | 52 |
| 5 | 0x35 | 53 |
| 6 | 0x36 | 54 |
| 7 | 0x37 | 55 |
| 8 | 0x38 | 56 |
| 9 | 0x39 | 57 |
| : | 0x3A | 58 |
| ; | 0x3B | 59 |
| < | 0x3C | 60 |
| = | 0x3D | 61 |
| > | 0x3E | 62 |
| ? | 0x3F | 63 |
| @ | 0x40 | 64 |
| A | 0x41 | 65 |
| B | 0x42 | 66 |
| C | 0x43 | 67 |
| D | 0x44 | 68 |
| E | 0x45 | 69 |
| F | 0x46 | 70 |
| G | 0x47 | 71 |
| H | 0x48 | 72 |
| I | 0x49 | 73 |
| J | 0x4A | 74 |
| K | 0x4B | 75 |
| L | 0x4C | 76 |
| M | 0x4D | 77 |
| N | 0x4E | 78 |
| O | 0x4F | 79 |
| P | 0x50 | 80 |
| Q | 0x51 | 81 |
| R | 0x52 | 82 |
| S | 0x53 | 83 |
| T | 0x54 | 84 |
| U | 0x55 | 85 |
| V | 0x56 | 86 |
| W | 0x57 | 87 |
| X | 0x58 | 88 |
| Y | 0x59 | 89 |
| Z | 0x5A | 90 |
| [ | 0x5B | 91 |
| \ | 0x5C | 92 |
| ] | 0x5D | 93 |
| ^ | 0x5E | 94 |
| _ | 0x5F | 95 |
| ` | 0x60 | 96 |
| a | 0x61 | 97 |
| b | 0x62 | 98 |
| c | 0x63 | 99 |
| d | 0x64 | 100 |
| e | 0x65 | 101 |
| f | 0x66 | 102 |
| g | 0x67 | 103 |
| h | 0x68 | 104 |
| i | 0x69 | 105 |
| j | 0x6A | 106 |
| k | 0x6B | 107 |
| l | 0x6C | 108 |
| m | 0x6D | 109 |
| n | 0x6E | 110 |
| o | 0x6F | 111 |
| p | 0x70 | 112 |
| q | 0x71 | 113 |
| r | 0x72 | 114 |
| s | 0x73 | 115 |
| t | 0x74 | 116 |
| u | 0x75 | 117 |
| v | 0x76 | 118 |
| w | 0x77 | 119 |
| x | 0x78 | 120 |
| y | 0x79 | 121 |
| z | 0x7A | 122 |
| { | 0x7B | 123 |
| | | 0x7C | 124 |
| } | 0x7D | 125 |
| ~ | 0x7E | 126 |
| DEL | 0x7F | 127 |
Further reading: ASCII — Wikipedia
Limitations
- Covers standard 7-bit ASCII (0-127) only — extended 8-bit character sets (128-255) vary by encoding and aren't included here.
Frequently Asked Questions
What's on this table?
Every standard 7-bit ASCII character (codes 0-127), including the non-printable control characters, alongside its hex and decimal code.
What do names like NUL, BEL, and DEL mean?
They're the standard abbreviations for ASCII's non-printable control characters — for example BEL (0x07) historically rang a physical bell, and DEL (0x7F) marks the delete character.
Why does this table stop at 127?
127 is the highest code point in standard 7-bit ASCII. Codes 128-255 belong to various 8-bit extended character sets (like Latin-1 or Windows-1252), which aren't part of the core ASCII standard and vary by encoding.
Is this the same as UTF-8?
For codes 0-127, yes — UTF-8 was specifically designed so its first 128 code points are identical to ASCII. Above 127, UTF-8 uses multi-byte sequences that this single-byte table doesn't cover.