ASCII Table (Dec, Hex, Oct, Binary)

Searchable ASCII table with decimal, hexadecimal, octal and binary codes, control character names, C escapes and HTML entities, plus the Latin-1 and Windows-1252 upper half.

Last updatedHow we build & check our tools
Results will appear here once you enter your values.

Reading the ASCII table

ASCII (American Standard Code for Information Interchange) assigns the numbers 0 to 127 to 128 characters. It was published as ANSI X3.4 in 1963, revised in 1968, and documented for the internet in RFC 20 (1969). Every row in the table is one number written four ways: decimal, hexadecimal, octal and 8-bit binary. The letter A, for example, is 65 decimal, 0x41 hex, 101 octal and 01000001 binary.

The layout is deliberate. Digits 0–9 are 48–57, so subtracting 48 (or '0') from a digit character gives its value. Uppercase letters start at 65 and lowercase at 97, exactly 32 apart, so flipping bit 5 (0x20) switches case; that is why c | 0x20 lowercases an ASCII letter. Holding Ctrl in a terminal clears bits 5 and 6, which is how Ctrl+C becomes 3 (ETX) and Ctrl+[ becomes 27 (ESC).

Search accepts a typed character, a decimal number, 0x hex, \ octal, 0b binary, a control abbreviation such as LF, a C escape such as \n, an HTML entity, or part of a name.

The control characters you still meet

Codes 0–31 and 127 are control characters designed for teleprinters. Most are obsolete, but a handful matter every day:

  • LF (10, \n) ends a line on Linux and macOS. CR (13, \r) followed by LF ends a line on Windows and in HTTP headers, which is why files edited on both systems show stray ^M characters.
  • HT (9, \t) is the tab in TSV files and Makefiles.
  • ESC (27, \x1B) starts ANSI terminal sequences such as \x1B[31m for red text.
  • NUL (0) terminates C strings and often signals binary data in a file that should be text.
  • BEL (7) beeps the terminal; BS (8) moves back one column.
  • FS, GS, RS and US (28–31) were built-in field and record separators, and RS still delimits records in the JSON text sequences format (RFC 7464).
  • DEL (127) is all seven bits set, originally used to punch out a mistake on paper tape.

Extended ASCII is not one standard

ASCII stops at 127. Values 128–255 depend on the encoding, and mixing them up produces mojibake such as ’ in place of an apostrophe.

  • ISO-8859-1 (Latin-1) puts invisible C1 control codes at 128–159 and accented letters and symbols (é, ©, °) at 160–255. Its values match the first 256 Unicode code points.
  • Windows-1252 is identical except that 128–159 hold printable characters such as the euro sign (128), curly quotes (145–148) and the en and em dashes (150, 151). Browsers decode pages labeled ISO-8859-1 as Windows-1252 for this reason.
  • UTF-8, the web default, never uses a single byte above 127 for a character. Byte 0xE9 on its own is invalid UTF-8; é is the two bytes 0xC3 0xA9.

When you need a character above 127 in HTML, prefer the named or numeric entity shown in the table, or make sure the page is served as UTF-8.

Frequently Asked Questions

Common questions about the ASCII Table (Dec, Hex, Oct, Binary)

Space is 32 decimal, 0x20 hex, 040 octal and 00100000 binary. It is the first printable character in the table.
From the same team

Turn your GPU into an OpenAI-compatible API endpoint

Wide Area AI routes your LLM API calls to your own hardware over a Cloudflare Tunnel — free local inference with edge caching and automatic cloud failover. Works with any OpenAI SDK.

Start routing — free

Sources & References

RFC 20: ASCII format for Network Interchange

Code chart and control character names for 7-bit ASCII (ANSI X3.4-1968)

C0 Controls and Basic Latin (U+0000–U+007F)

Unicode names for the ASCII range

Windows-1252 to Unicode mapping

Glyphs for bytes 0x80–0x9F in Windows-1252

Named character references

HTML entity names such as & and ©