常用字符集和编码格式

  1. 1. 常用字符集和编码

常用字符集和编码

  • ASCII 美国信息交换标准代码

编码规则: 7位表示一个字符,共128个字符

缺点:只能显示26个拉丁字母、阿拉伯数字和英文标点符号

  • EASCII 欧洲扩展字符集

编码规则:8位表示一个字符,共256个字符

缺点:虽解决了部分西欧语言的字符显示问题,但对其他更多的语言依然无力

  • GB2312/GB2312-80 等中文字符集

编码规则:把127号的字符取消掉(即EASCII),两个大于128的字符连在一起表示一个汉字,高字节从 0xA1 到 0xF7, 低字节从 0xA1 到 0xFE

  • GBK 中文字符集

微软对 GB2312-80 进行扩充后制定了 GBK 编码。

  • Unicode 统一字符集

包含超过十万个字符,让电脑能够解析世界上数十种语言。

编码规则:使用4个字节的数字来表达字母、符号、文字。

Unicode 指的是字符集,而 UTF-32, UTF-16, UTF-8 则说的是编码方案。

  • UTF-32

编码规则:用上述 Unicode 的4字节的数字来表达字母、符号、文字

  • UTF-16

编码规则:

若字符编码 U 小于 0x10000, 也就是小于十进制的 65535,则使用2个字节表示;

若字符编码 U 大于 0x10000, 也就是大于十进制的 65535,则使用4个字节表示。
  • UTF-8

是针对对 Unicode 的可变长度字符编码,可表示 Unicode 中任何字符,且编码中第一个字节与 ASCII 兼容。

编码规则是使用1到4个字节为每个字符编码:

128个 US-ASCII 字符只需用1个字节编码,从 U+0000 到 U+007F

带有附加符号的拉丁文、希腊文、西里尔字母、亚美尼亚语、希伯来文、阿拉伯文、叙利亚文等,则使用第2个字节编码,从 U+0080 到 U+07FF

其他基本多文中平面中的字符则使用3个字节编码

其他极少辅助平面中的字符则使用4个字节编码