hex | 0 | 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | a | b | c | d | e | f | |
---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
bin | 0000 | 0001 | 0010 | 0011 | 0100 | 0101 | 0110 | 0111 | 1000 | 1001 | 1010 | 1011 | 1100 | 1101 | 1110 | 1111 | |
0 | 000 | NUL | SOH | STX | ETX | EOT | ENQ | ACK | BEL | BS | HT | LF | VT | FF | CR | SO | SI |
1 | 001 | DLE | XON | DC2 | XOFF | DC4 | NAK | SYN | ETB | CAN | EM | SUB | ESC | FS | GS | RS | US |
2 | 010 | SP | ! | " | # | $ | % | & | ' | ( | ) | * | + | , | - | . | / |
3 | 011 | 0 | 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | : | ; | < | = | > | ? |
4 | 100 | @ | A | B | C | D | E | F | G | H | I | J | K | L | M | N | O |
5 | 101 | P | Q | R | S | T | U | V | W | X | Y | Z | [ | \ | ] | ^ | _ |
6 | 110 | ` | a | b | c | d | e | f | g | h | i | j | k | l | m | n | o |
7 | 111 | p | q | r | s | t | u | v | w | x | y | z | { | | | } | ~ | DEL |
USAS X3.4-1967 was published 1967-07-07; over fifty dang years ago!
(while a few characters were allowed multiple interpretations, it was the first version of the table we still use today: USAS X3.4-1968, ANSI X3.4-1977, and ANSI X3.4-1986 each updated the standard, but the table effectively remains the same.)
due to ASCII’s overwhelming success, these are also the first 128 codepoints of many subsequent encodings, including three of the most popular:
❧ UTF-8, a variable-width encoding, just the absolute best, your friend & mine; the only encoding you should ever use
❧ ISO 8859-1, an 8-bit encoding that was fine for its time
❧ Windows-1252, a Microsoft tweak of the former, replacing some of the never-used C1 control codes with then-needed printable characters
(the last two are oft conflated: when someone says the former, they almost certainly mean the latter; some modern standards canonise this.)
UTF-16 (or, so help me, UCS-2) is a garbage encoding for garbage people.
more information about character sets can be found at j teaches you: binary, eventually, maybe, you know, sometime.