ASCII Binary Reference Table

Complete character-to-binary mapping for ASCII codes 0-127

ASCII Binary Quick Reference

I have built and referenced countless ASCII-to-binary tables over the years, and I always come back to the same appreciation: ASCII's design is beautifully systematic. Every uppercase letter differs from its lowercase counterpart by exactly one bit (bit 5). Digits 0 through 9 occupy codes 48-57, meaning you can convert '0' to binary by writing 0110000 plus the digit value. Once you internalize these patterns, manual binary decoding becomes almost as fast as reading plain text.

Control Characters (0-31)

The first 32 ASCII codes are control characters — they do not print anything but control how data is interpreted. Here is what each one means:

DecHexBinary (7-bit)Binary (8-bit)Char
00x00000000000000000NUL
10x01000000100000001SOH
20x02000001000000010STX
30x03000001100000011ETX
40x04000010000000100EOT
50x05000010100000101ENQ
60x06000011000000110ACK
70x07000011100000111BEL
80x08000100000001000BS
90x09000100100001001TAB
100x0A000101000001010LF
110x0B000101100001011VT
120x0C000110000001100FF
130x0D000110100001101CR
140x0E000111000001110SO
150x0F000111100001111SI
160x10001000000010000DLE
170x11001000100010001DC1
180x12001001000010010DC2
190x13001001100010011DC3
200x14001010000010100DC4
210x15001010100010101NAK
220x16001011000010110SYN
230x17001011100010111ETB
240x18001100000011000CAN
250x19001100100011001EM
260x1A001101000011010SUB
270x1B001101100011011ESC
280x1C001110000011100FS
290x1D001110100011101GS
300x1E001111000011110RS
310x1F001111100011111US

Key point: Control characters like LF (10, line feed) and CR (13, carriage return) are critical for understanding text file formats. Windows uses CR+LF (00001101 00001010), while Unix uses just LF (00001010). This difference causes the classic "mixed line endings" problem.

Printable Characters (32-127)

Codes 32-126 are the printable characters. Code 127 is DEL. Here is the full table:

DecHexBinary (7-bit)Binary (8-bit)Char
320x20010000000100000[Space]
330x21010000100100001!
340x22010001000100010"
350x23010001100100011#
360x24010010000100100$
370x25010010100100101%
380x26010011000100110&
390x27010011100100111'
400x28010100000101000(
410x29010100100101001)
420x2A010101000101010*
430x2B010101100101011+
440x2C010110000101100,
450x2D010110100101101-
460x2E010111000101110.
470x2F010111100101111/
480x300110000001100000
490x310110001001100011
500x320110010001100102
510x330110011001100113
520x340110100001101004
530x350110101001101015
540x360110110001101106
550x370110111001101117
560x380111000001110008
570x390111001001110019
580x3A011101000111010:
590x3B011101100111011;
600x3C011110000111100<
610x3D011110100111101=
620x3E011111000111110>
630x3F011111100111111?
640x40100000001000000@
650x41100000101000001A
660x42100001001000010B
670x43100001101000011C
680x44100010001000100D
690x45100010101000101E
700x46100011001000110F
710x47100011101000111G
720x48100100001001000H
730x49100100101001001I
740x4A100101001001010J
750x4B100101101001011K
760x4C100110001001100L
770x4D100110101001101M
780x4E100111001001110N
790x4F100111101001111O
800x50101000001010000P
810x51101000101010001Q
820x52101001001010010R
830x53101001101010011S
840x54101010001010100T
850x55101010101010101U
860x56101011001010110V
870x57101011101010111W
880x58101100001011000X
890x59101100101011001Y
900x5A101101001011010Z
910x5B101101101011011[
920x5C101110001011100\
930x5D101110101011101]
940x5E101111001011110^
950x5F101111101011111_
960x60110000001100000`
970x61110000101100001a
980x62110001001100010b
990x63110001101100011c
1000x64110010001100100d
1010x65110010101100101e
1020x66110011001100110f
1030x67110011101100111g
1040x68110100001101000h
1050x69110100101101001i
1060x6A110101001101010j
1070x6B110101101101011k
1080x6C110110001101100l
1090x6D110110101101101m
1100x6E110111001101110n
1110x6F110111101101111o
1120x70111000001110000p
1130x71111000101110001q
1140x72111001001110010r
1150x73111001101110011s
1160x74111010001110100t
1170x75111010101110101u
1180x76111011001110110v
1190x77111011101110111w
1200x78111100001111000x
1210x79111100101111001y
1220x7A111101001111010z
1230x7B111101101111011{
1240x7C111110001111100|
1250x7D111110101111101}
1260x7E111111001111110~
1270x7F111111101111111DEL

The Uppercase-Lowercase Bit Pattern

One of my favorite ASCII design details is how uppercase and lowercase letters relate at the binary level:

  • A = 1000001 (65), a = 1100001 (97)
  • The difference is exactly bit 5 (value 32)
  • Uppercase has bit 5 = 0, lowercase has bit 5 = 1
  • Toggling bit 5 flips between cases: A (65) XOR 32 = a (97)

This means you can convert between cases with a single bitwise XOR operation. This is not just a curiosity — old terminal protocols used this property to implement case-insensitive matching without string comparison.

7-Bit vs 8-Bit Binary

The ASCII table above shows both 7-bit and 8-bit binary representations. Here is why both matter:

  • 7-bit binary covers the original ASCII standard (0-127, fitting in 7 bits)
  • 8-bit binary pads each code with a leading 0 to fill a full byte
  • Extended ASCII (128-255) uses the 8th bit for additional characters — but these are not standardized and vary by code page

When using a binary to text converter, you will most often see 8-bit sequences, since computers work with bytes. But understanding the 7-bit foundation helps you recognize that the leading bit in standard ASCII should always be 0.

Using This Table with Binary Tools

This reference table pairs perfectly with our binary translator tools. When you use the binary decoder, you can cross-reference the binary output against this table to verify your results. The pattern I recommend: look at the binary output, identify the first 4 bits (high nibble) and last 4 bits (low nibble), then find the character in the table. With practice, you will start recognizing common characters by their binary patterns alone — 01000001 is always 'A', 01100001 is always 'a'.

Try It Yourself

Open the Binary Code Decoder in a new tab and enter some binary patterns to see the results instantly. All conversions happen in your browser — no data is sent to any server.