04 Jan 2015 11:44 +0000
What is ASCII, Latin-1, GB2312, Unicode and UTF-8
ASCII (American Standard Code for Information Interchange)
ASCII 码指包括 26 个英文字母在内的 128 个字符编码,用 7 位二进制数(0-127)一一对应表示,如 M
的 ASCII 编码为 01001110
。
Latin-1
部分欧洲国家在 ASCII 的基础上,利用一个字节(8 位)中闲置的最高位将其扩展至 256 个字符。
GB2312 (国标 2312)
国标 2312 是 ASCII 的中文扩展,保留原有字符编码(半角字符),同时增加了包括汉字字符在内的“全角字符”,用两个字节表示。
Unicode
Unicode 是几乎包含全世界所有符号的编码表,用于统一字符的编码方式,但 Unicode 仅限于符号集,不是具体的编码方式,意味着 Unicode 可以有多种的实现方式,如 UTF-8。
UTF-8
UTF-8 编码是 Unicode 的一种具体实现方式,使用了变长编码方式,用 1-4 个字节表示一个字符。编码方式如下:
对 1 个字节:第一位 0,后 7 位表示 ASCII 字符,实际上和 ASCII 相同;
对多个字节(n):第 1 个字节前 n 位为 1,n+1 位为 0,后续字节前两位为 10,如三位字节表示为 1110xxxx 10xxxxxx 10xxxxxx
,其中 "x" 用 Unicode 编码填充,如汉字"严"的 Unicode 编码为 100111000100101
,则"严"的 UTF-8 编码为 "11100100 10111000 10100101"
Other Technologiesid: 763, type: 1, locale: zh-cn
Loading comments...