1、GB2312:又称国标码,规定:对任意一个图形字符都采用两个字节表示,每个字节均采用七位编码表示,习惯上称第一个字节为“高字节”,第二个字节为“低字节”
GB2312中汉字编码范围: 第一个字节: 0xB0--0xF7 对应十进制为:176-247;
第二个字节: 0xA0--0xFE 对应十进制为:160-254;
GB2312将代码表分为94个区,对应第一个字节(0xa1-0xfe);每个区94个位(0xa1-0xfe)对应第二个字节;
两个字节的值分别为区号值和位号值加32(20H),因此也成为区位码
编码范围:
1、01 -- 09 位符号,数字区;
2、16 -- 87 区位汉字区(0xb0-0xf7);
3、10 -- 15区、88 -- 94区有待进一步标准化的空白区。
2、Big5 又称大五码,即是一个繁体字编码
每个汉字由两个字节构成--1、第一字节范围:0x81-0xFE(129-255)共126种;
2、第二个字节范围不连续:0x40-0x7E(64-126)和0xA1-0xFE(161-254)共157种。
3、GBK 是GB2312的扩展,向下完全兼容GB2312;
每个字节仍然包含两个字节:
1、第一个字节范围:0x81-0xFE(129-254);
2、第二个字节范围:0x40-0xFE(64-254)。
GBK中有码位23940个,包含汉字21003个
Unicode:世界标准:为每个字符提供了唯一的特定数值;
有三套编码方式:
1、utf-8:保留了ASCII符的编码作为它的一个部分;用以解决国际上符号的一种多字节编码;它对英文使用八位(1个字节),对中文使用24位(3个字节);
2、utf-16;
3、uft-32。
utf-8与Unicode之间转化:
Unicode为双字节,而UTF-8中汉字占三个字节。
例如:牛 对应的Unicode编码为725B,对应的二进制位111001001011011
111001001011011
11100111 10001001 10011011 对应的utf-8编码为:牛