ASCII Table Reference

Look up ASCII character codes, decimal, hex, and binary values

About This Tool

ASCII (American Standard Code for Information Interchange) is a 7-bit character encoding from 1963. It defines 128 code points: 33 control characters (0x00–0x1F, 0x7F) and 95 printable characters. Every modern encoding — UTF-8 included — preserves ASCII as its first 128 code points.

This reference lists each character with its decimal, hex, octal, and binary value, plus the description for control codes.

ASCII was developed by the American Standards Association (now ANSI) and standardized as ASA X3.4-1963, then revised through 1986 as ANSI X3.4. Its predecessor was Baudot code (5-bit, used in teletype). The 7-bit choice was a compromise between code space and the 8-bit byte that was becoming standard — the eighth bit was reserved for parity in early transmission. The 95 printable characters cover unaccented English letters, digits, common punctuation, and the basic arithmetic operators. The 33 control characters come from teletype and tape control: line feed (LF, 0x0A), carriage return (CR, 0x0D), bell (BEL, 0x07), tab (HT, 0x09), backspace (BS, 0x08), and the file separators (FS/GS/RS/US, 0x1C–0x1F).

A worked example: the letter 'A' is decimal 65, hex 0x41, octal 0101, binary 01000001. The lowercase 'a' is 97, exactly 32 higher — that's why the bitmask `& 0xDF` converts lowercase to uppercase (it clears bit 5). Digits 0–9 occupy 0x30–0x39, which is why subtracting 0x30 from a digit character gives its numeric value. The space character is 0x20, the lowest printable. The tilde '~' is 0x7E, the highest. DEL at 0x7F sits oddly outside the printable range — historically used to overwrite punched-tape characters by punching all seven holes.

Limitations: ASCII covers English and basic symbols only. Accented characters (é, ñ, ü), non-Latin scripts, mathematical symbols, and emoji are outside its 128-code space. Extended ASCII variants (Latin-1, Windows-1252, IBM PC code page 437) each defined different mappings for codes 128–255, which is why files moved between systems sometimes show garbled accented text. UTF-8 solved this by using ASCII for the first 128 codes and multi-byte sequences for everything else; for plain English text, an ASCII file and a UTF-8 file are byte-identical.

The about text and FAQ on this page were drafted with AI assistance and reviewed by a member of the Coherence Daddy team before publishing. See our Content Policy for editorial standards.

Frequently Asked Questions