ASCII编码(American Standard Code for Information Interchange,美国信息互换标准代码),使用127个8进制字节表示英文和半角字符。
GBK (Guo Biao Kuozhan,国标扩展),当在ASCII 码的范围时,就用一个字节表示,然后每两个字节表示一个汉语和全角字符。
UCS(Universal Multiple-Octet Coded Character Set)俗称UNICODE,所有的字符都是两个字节。ASCII字符前面全部补零,其他字符重新编码。
UTF(UCS Transfer Format,万国码),当在ASCII 码的范围时,就用一个字节表示,一个中 文字符占3个字节,从unicode到uft-8并不是直接的对应。
中英文各字符集十进制编码对照表
字符 | ASCII | GBK | UNICODE | UTF8 |
---|---|---|---|---|
a | 97 | 97 | 97 | 97 |
阿 | 无 | 45218 | 38463 | 15308991 |
中英文各字符集二进制编码对照表
字符 | ASCII | GBK | UNICODE | UTF8 |
---|---|---|---|---|
a | 01100001 | 01100001 | 0000000001100001 | 01100001 |
阿 | 无 | 1011000010100010 | 1001011000111111 | 111010011001100010111111 |
从第一个表中,我们可以看出英文字符(更准确的来说是ASCII字符集的字符)编码顺序没有改变,中文字符则都做了从新的编排。
从第二个表中,我们很容易看出,四种字符编码集对英文字符的处理除了“UNICODE”用两个字节,其他都是使用一个字节来表示。对于中文字符,“GBK”和“UNICODE”使用两个字节来表示,UTF8使用三个字节来表示。