What is the ASCII table?
ASCII maps the numbers 0–127 to characters, and it is the foundation almost every other encoding is built on. The first 32 values plus 127 are control characters — invisible instructions inherited from teleprinters, like carriage return and bell — and the remaining 95 are the printable letters, digits and punctuation. UTF-8 was designed so that its first 128 code points are byte-identical to ASCII, which is why plain-English text is the same bytes in both, and why ASCII still turns up constantly when you are reading a hex dump or debugging an encoding bug.
How to use this tool
- 1 Search by decimal (65), hex (0x41), the character itself, or a name like "newline" or "escape".
- 2 Filter to control characters, digits, letters or symbols to narrow the table.
- 3 Read across for the same value in decimal, hex, octal and 8-bit binary.
- 4 The meaning column explains what each control character was originally for and where it still shows up.
Frequently asked questions
What is the difference between LF and CR?
LF (10, \n) means move down a line; CR (13, \r) means return to the start of the line. Unix and macOS end lines with LF alone, Windows uses CR followed by LF. That difference is why files moved between systems show stray ^M characters or collapse into one long line.
How do I get the ASCII code of a character in code?
In JavaScript, 'A'.charCodeAt(0) gives 65 and String.fromCharCode(65) reverses it. Python uses ord('A') and chr(65). In C a char is already its numeric value, so printf("%d", 'A') prints 65 directly.
Is extended ASCII the same thing?
No, and the name is misleading. ASCII is only 0–127. Values 128–255 depend entirely on which code page is in use — Latin-1, Windows-1252 and others all disagree about those bytes. That ambiguity is exactly what UTF-8 was invented to end, so treat anything above 127 as encoding-specific.
Why do uppercase and lowercase letters differ by exactly 32?
It was a deliberate design choice: A is 65 (binary 1000001) and a is 97 (1100001), so case differs by a single bit. Early hardware could flip case by toggling bit 6 with one instruction, and the trick still appears in low-level string code today.
What is character 127 doing at the end?
DEL is 127 — all seven bits set. On paper tape, deleting a character meant punching out every hole in that position, which physically produced 1111111. It ended up at the top of the table rather than with the other control characters because of that mechanical detail.