ASCII
American Standard Code for Information Interchange
美国信息交换标准代码
至今为止定义了128个字符 (序号:0-127)
2^7=128
7位二进制数字表示
EASCII(Extended ASCII)
延伸美国标准信息交换码
在128个ASCII码的基础上, 又增加了128个新字符, 也就是EASCII一共定义了256个字符 (序号: 0-255)
2^8=256
8位二进制数字表示
ASCII从能否显示的角度分为2大类:
控制字符(不能显示) 33个
可显示字符 95个
控制字符主要是用来操作已经处理过的字符的, 也就是删除, 取消, 确认, 回车. 转义等功能性的字符
而且在这些控制字符中, 有大半部分已经被弃用了
控制字符的在ASCII码表中的序号是: 0-31号和127号
其中127号字符是DELETE字符, 对应你键盘上的DELETE键
虽然控制字符不能显示出来, 但是却可以输入, 在绝大部分的终端系统中, 输入Ctrl+对应键盘字符就能输入控制字符
例如: 我想输入NULL空字符, 根据ASCII码的脱出字符表示法^@, 需要按键盘的Ctrl键+2号数字键而并不是敲Shift+6+2
可显示字符, 使用频率远远大于控制字符
但是95个字符的数量决定了ASCII码只能显示:阿拉伯数字, 英文字母和英语标点符号
细数一下:
26个小写英文字母 + 26个大写英文字母 = 52个字符
阿拉伯数字0-9 = 10个字符
个人觉得标点符号值得比较值得展示一下
95 – 52 -10 = 32个标点符号
+ - * /       加减乘除4个
, . ; <space> 分隔符号4个
()[]{}        括号类6个
' " `         引号类3个
& | !        逻辑符号3个
?            通配符号1个
             转义符号1个
% ^           取模乘方2个
> < =         比较符号3个
$             变量符号1个
#             注释符号1个
_ :           下划冒号2个
~             波浪符号1个
4+4+6+3+3+1+1+2+3+1+1+2+1
20+4+3+5=32
给一张初代ASCII码表的官方图(1968年版)
从b1,b2…一直到b7, 也就是二进制位数只有7位
查表的顺序是从b7到b1代表二进制编号
列开始顺序查找, 也就是先从第0列第0行开始, 到第7列第15行结束
这张表尤其适合查找字符的16进制编号
控制符表
| 二进制 | 十进制 | 十六进制 | 缩写 | 名称/意义 | 
|---|---|---|---|---|
| 0000 0000 | 0 | 0 | NUL | 空字符(Null) | 
| 0000 0001 | 1 | 1 | SOH | 标题开始 | 
| 0000 0010 | 2 | 2 | STX | 本文开始 | 
| 0000 0011 | 3 | 3 | ETX | 本文结束 | 
| 0000 0100 | 4 | 4 | EOT | 传输结束 | 
| 0000 0101 | 5 | 5 | ENQ | 请求 | 
| 0000 0110 | 6 | 6 | ACK | 确认回应 | 
| 0000 0111 | 7 | 7 | BEL | 响铃 | 
| 0000 1000 | 8 | 8 | BS | 退格 | 
| 0000 1001 | 9 | 9 | HT | 水平定位符号 | 
| 0000 1010 | 10 | 0A | LF | 换行键 | 
| 0000 1011 | 11 | 0B | VT | 垂直定位符号 | 
| 0000 1100 | 12 | 0C | FF | 换页键 | 
| 0000 1101 | 13 | 0D | CR | CR (字符) | 
| 0000 1110 | 14 | 0E | SO | 取消变换(Shift out) | 
| 0000 1111 | 15 | 0F | SI | 启用变换(Shift in) | 
| 0001 0000 | 16 | 10 | DLE | 跳出数据通讯 | 
| 0001 0001 | 17 | 11 | DC1 | 设备控制一(XON 激活软件速度控制) | 
| 0001 0010 | 18 | 12 | DC2 | 设备控制二 | 
| 0001 0011 | 19 | 13 | DC3 | 设备控制三(XOFF 停用软件速度控制) | 
| 0001 0100 | 20 | 14 | DC4 | 设备控制四 | 
| 0001 0101 | 21 | 15 | NAK | 确认失败回应 | 
| 0001 0110 | 22 | 16 | SYN | 同步用暂停 | 
| 0001 0111 | 23 | 17 | ETB | 区块传输结束 | 
| 0001 1000 | 24 | 18 | CAN | 取消 | 
| 0001 1001 | 25 | 19 | EM | 连线介质中断 | 
| 0001 1010 | 26 | 1A | SUB | 替换 | 
| 0001 1011 | 27 | 1B | ESC | 退出键 | 
| 0001 1100 | 28 | 1C | FS | 文件分割符 | 
| 0001 1101 | 29 | 1D | GS | 组群分隔符 | 
| 0001 1110 | 30 | 1E | RS | 记录分隔符 | 
| 0001 1111 | 31 | 1F | US | 单元分隔符 | 
| 0111 1111 | 127 | 7F | DEL | Delete字符 | 
可显示字符表
| 二进制 | 十进制 | 十六进制 | 字符 | 
|---|---|---|---|
| 0010 0000 | 32 | 20 | (space) | 
| 0010 0001 | 33 | 21 | ! | 
| 0010 0010 | 34 | 22 | “ | 
| 0010 0011 | 35 | 23 | # | 
| 0010 0100 | 36 | 24 | $ | 
| 0010 0101 | 37 | 25 | % | 
| 0010 0110 | 38 | 26 | & | 
| 0010 0111 | 39 | 27 | ‘ | 
| 0010 1000 | 40 | 28 | ( | 
| 0010 1001 | 41 | 29 | ) | 
| 0010 1010 | 42 | 2A | * | 
| 0010 1011 | 43 | 2B | + | 
| 0010 1100 | 44 | 2C | , | 
| 0010 1101 | 45 | 2D | – | 
| 0010 1110 | 46 | 2E | . | 
| 0010 1111 | 47 | 2F | / | 
| 0011 0000 | 48 | 30 | 0 | 
| 0011 0001 | 49 | 31 | 1 | 
| 0011 0010 | 50 | 32 | 2 | 
| 0011 0011 | 51 | 33 | 3 | 
| 0011 0100 | 52 | 34 | 4 | 
| 0011 0101 | 53 | 35 | 5 | 
| 0011 0110 | 54 | 36 | 6 | 
| 0011 0111 | 55 | 37 | 7 | 
| 0011 1000 | 56 | 38 | 8 | 
| 0011 1001 | 57 | 39 | 9 | 
| 0011 1010 | 58 | 3A | : | 
| 0011 1011 | 59 | 3B | ; | 
| 0011 1100 | 60 | 3C | < | 
| 0011 1101 | 61 | 3D | = | 
| 0011 1110 | 62 | 3E | > | 
| 0011 1111 | 63 | 3F | ? | 
| 0100 0000 | 64 | 40 | @ | 
| 0100 0001 | 65 | 41 | A | 
| 0100 0010 | 66 | 42 | B | 
| 0100 0011 | 67 | 43 | C | 
| 0100 0100 | 68 | 44 | D | 
| 0100 0101 | 69 | 45 | E | 
| 0100 0110 | 70 | 46 | F | 
| 0100 0111 | 71 | 47 | G | 
| 0100 1000 | 72 | 48 | H | 
| 0100 1001 | 73 | 49 | I | 
| 0100 1010 | 74 | 4A | J | 
| 0100 1011 | 75 | 4B | K | 
| 0100 1100 | 76 | 4C | L | 
| 0100 1101 | 77 | 4D | M | 
| 0100 1110 | 78 | 4E | N | 
| 0100 1111 | 79 | 4F | O | 
| 0101 0000 | 80 | 50 | P | 
| 0101 0001 | 81 | 51 | Q | 
| 0101 0010 | 82 | 52 | R | 
| 0101 0011 | 83 | 53 | S | 
| 0101 0100 | 84 | 54 | T | 
| 0101 0101 | 85 | 55 | U | 
| 0101 0110 | 86 | 56 | V | 
| 0101 0111 | 87 | 57 | W | 
| 0101 1000 | 88 | 58 | X | 
| 0101 1001 | 89 | 59 | Y | 
| 0101 1010 | 90 | 5A | Z | 
| 0101 1011 | 91 | 5B | [ | 
| 0101 1100 | 92 | 5C | |
| 0101 1101 | 93 | 5D | ] | 
| 0101 1110 | 94 | 5E | ^ | 
| 0101 1111 | 95 | 5F | _ | 
| 0110 0000 | 96 | 60 | ` | 
| 0110 0001 | 97 | 61 | a | 
| 0110 0010 | 98 | 62 | b | 
| 0110 0011 | 99 | 63 | c | 
| 0110 0100 | 100 | 64 | d | 
| 0110 0101 | 101 | 65 | e | 
| 0110 0110 | 102 | 66 | f | 
| 0110 0111 | 103 | 67 | g | 
| 0110 1000 | 104 | 68 | h | 
| 0110 1001 | 105 | 69 | i | 
| 0110 1010 | 106 | 6A | j | 
| 0110 1011 | 107 | 6B | k | 
| 0110 1100 | 108 | 6C | l | 
| 0110 1101 | 109 | 6D | m | 
| 0110 1110 | 110 | 6E | n | 
| 0110 1111 | 111 | 6F | o | 
| 0111 0000 | 112 | 70 | p | 
| 0111 0001 | 113 | 71 | q | 
| 0111 0010 | 114 | 72 | r | 
| 0111 0011 | 115 | 73 | s | 
| 0111 0100 | 116 | 74 | t | 
| 0111 0101 | 117 | 75 | u | 
| 0111 0110 | 118 | 76 | v | 
| 0111 0111 | 119 | 77 | w | 
| 0111 1000 | 120 | 78 | x | 
| 0111 1001 | 121 | 79 | y | 
| 0111 1010 | 122 | 7A | z | 
| 0111 1011 | 123 | 7B | { | 
| 0111 1100 | 124 | 7C | | | 
| 0111 1101 | 125 | 7D | } | 
| 0111 1110 | 126 | 7E | ~ | 
EASCII
EASCII字符编码, 是把ASCII的7位二进制表示扩充到了8位
扩充出来的符号包括表格符号、计算符号、希腊字母和特殊的拉丁符号, 但还是仅收录了偏拉丁语的一系列国家的语言符号
ISO 8859 是最常见的8位字符编码。
除此之外,不同的操作系统都会有它的8位字符编码, 也就是说EASCII扩充的后半部分字符集在某些环境下是互不兼容的
ISO 8859 标准一共定义了15个字符集, 从1到16没有12, 分别去表示不同语言体系的语言字符
ISO 8859-1 常用字符
| 字符 | 十六进制 | 十进制 | 描述 | 
|---|---|---|---|
| A0 | 160 | 不换行空格(NBSP) | |
| ¡ | A1 | 161 | 倒感叹号 | 
| ¢ | A2 | 162 | 英分 | 
| £ | A3 | 163 | 英镑 | 
| ¤ | A4 | 164 | 货币记号 | 
| ¥ | A5 | 165 | 人民币/日元 | 
| ¦ | A6 | 166 | 断竖线 | 
| § | A7 | 167 | 小节符 | 
| ¨ | A8 | 168 | 分音符(元音变音) | 
| © | A9 | 169 | 著作权符 | 
| ª | AA | 170 | 阴性序数记号 | 
| « | AB | 171 | 左指双尖引号 | 
| ¬ | AC | 172 | 非标记 | 
|  | AD | 173 | 选择性连接号(SHY) | 
| ® | AE | 174 | 注册商标 | 
| ¯ | AF | 175 | 长音符 | 
| ° | B0 | 176 | 度 | 
| ± | B1 | 177 | 正负号 | 
| ² | B2 | 178 | 二次方号 | 
| ³ | B3 | 179 | 三次方号 | 
| ´ | B4 | 180 | 锐音符 | 
| µ | B5 | 181 | 微符 | 
| ¶ | B6 | 182 | 段落标记 | 
| · | B7 | 183 | 中心点 | 
| ¸ | B8 | 184 | 软音符 | 
| ¹ | B9 | 185 | 一次方号 | 
| º | BA | 186 | 阳性序数记号 | 
| » | BB | 187 | 右指双尖引号 | 
| ¼ | BC | 188 | 四分之一 | 
| ½ | BD | 189 | 二分之一 | 
| ¾ | BE | 190 | 四分之三 | 
| ¿ | BF | 191 | 竖翻问号 | 
| À | C0 | 192 | 带抑音符的A | 
| Á | C1 | 193 | 带锐音符的A | 
| Â | C2 | 194 | 带扬抑符的A | 
| Ã | C3 | 195 | 带颚化符的A | 
| Ä | C4 | 196 | 带分音符的A | 
| Å | C5 | 197 | 带上圆圈的A | 
| Æ | C6 | 198 | 大写连字AE | 
| Ç | C7 | 199 | 带下加符的C | 
| È | C8 | 200 | 带抑音符的E | 
| É | C9 | 201 | 带锐音符的E | 
| Ê | CA | 202 | 带扬抑符的E | 
| Ë | CB | 203 | 带分音符的E | 
| Ì | CC | 204 | 带抑音符的I | 
| Í | CD | 205 | 带锐音符的I | 
| Î | CE | 206 | 带扬抑符的I | 
| Ï | CF | 207 | 带分音符的I | 
| Ð | D0 | 208 | 带横线符的D | 
| Ñ | D1 | 209 | 带颚化符的N | 
| Ò | D2 | 210 | 带抑音符的O | 
| Ó | D3 | 211 | 带锐音符的O | 
| Ô | D4 | 212 | 带扬抑符的O | 
| Õ | D5 | 213 | 带颚化符的O | 
| Ö | D6 | 214 | 带分音符的O | 
| × | D7 | 215 | 乘号 | 
| Ø | D8 | 216 | 带斜线的O | 
| Ù | D9 | 217 | 带抑音符的U | 
| Ú | DA | 218 | 带锐音符的U | 
| Û | DB | 219 | 带扬抑符的U | 
| Ü | DC | 220 | 带分音符的U | 
| Ý | DD | 221 | 带锐音符的Y | 
| Þ | DE | 222 | 清音p | 
| ß | DF | 223 | 清音s | 
| à | E0 | 224 | 带抑音符的a | 
| á | E1 | 225 | 带锐音符的a | 
| â | E2 | 226 | 带扬抑符的a | 
| ã | E3 | 227 | 带颚化符的a | 
| ä | E4 | 228 | 带分音符的a | 
| å | E5 | 229 | 带上圆圈的a | 
| æ | E6 | 230 | 小写连字AE | 
| ç | E7 | 231 | 带下加符的c | 
| è | E8 | 232 | 带抑音符的e | 
| é | E9 | 233 | 带锐音符的e | 
| ê | EA | 234 | 带扬抑符的e | 
| ë | EB | 235 | 带分音符的e | 
| ì | EC | 236 | 带抑音符的i | 
| í | ED | 237 | 带锐音符的i | 
| î | EE | 238 | 带扬抑符的i | 
| ï | EF | 239 | 带分音符的i | 
| ð | F0 | 240 | 带斜线的d | 
| ñ | F1 | 241 | 带颚化符的n | 
| ò | F2 | 242 | 带抑音符的o | 
| ó | F3 | 243 | 带锐音符的o | 
| ô | F4 | 244 | 带扬抑符的o | 
| õ | F5 | 245 | 带颚化符的o | 
| ö | F6 | 246 | 带分音符的o | 
| ÷ | F7 | 247 | 除号 | 
| ø | F8 | 248 | 带斜线的o | 
| ù | F9 | 249 | 带抑音符的u | 
| ú | FA | 250 | 带锐音符的u | 
| û | FB | 251 | 带扬抑符的u | 
| ü | FC | 252 | 带分音符的u | 
| ý | FD | 253 | 带锐音符的y | 
| þ | FE | 254 | 小写字母Thorn | 


