ASCII·NUL
0
NUL
0x00 · 0000000

ASCII 0 — the NUL character

Not a visible character

NUL is control code 0, hex 00. You type it as ^@, and write it short as \0.

Characters that draw nothing and instead tell the device to do something.

What this control code did

Null

Others · Deleting, cancelling, and ESC — the key that opens a second meaning.

Seven bits

ASCII is seven bits wide, which is why there are 128 of them. The eighth bit was long left for parity.

0000000

One bit — the sixth, worth 32 — separates the cases. Off gives a capital, on gives a lowercase letter.

Kind
Control
Decimal
0
Hexadecimal
0x00
Octal
000
Binary
0000000
HTML entity
�
URL encoding
%00
CSS escape
\0
Short escape
\0
Ctrl key
^@

Only \e is missing from standard C; GCC, shells and regex engines take it.

The chart

Eight columns for the top three bits, sixteen rows for the bottom four. The capitals column sits right beside the lowercase one — that is the shape of the table.

Codes either side

How to read this

  • Add 32 to a capital and you get the lowercase letter — one bit flips.
  • Digits start at 48, so subtracting 48 from the code gives the number.
  • Holding Ctrl clears the top three bits — that is why Ctrl+I is a tab.
  • Everything under 32, plus 127, draws nothing. Those show their abbreviation instead.

Frequently asked questions

Q. What is the ASCII code for NUL?

Decimal 0, hex 00, octal 000, binary 0000000.

Q. How do I write NUL in HTML?

As �.

Q. How does it go in a URL?

It is encoded as %00.

Q. How do I type NUL?

^@. In a string you write it \0.