ansi gb2312 gbk unicode utf-8的问题

主要内容转摘自:(1-6)http://gjican.iteye.com/blog/1028003, 

                          (7) https://www.zhihu.com/question/20650946

1 ascii -:0~127

2 gb2312 ,使用2字节表, 可以包括7千多个常用简体汉字

       高字节                   低字节

      161-247(86)      161-254(93),    

3 GBK 18030 对GB2312 进行了扩展, 凡是低字节的值大于127,都认为是汉字, 于是包括了中国所有民族的文字, 很牛B的样子. 共有2万多个字符

4  UNICODE  将全世界所有语言进行统一编码,每个字符2个节,汉字在这里面是一个字符!

  但是,UNICODE 在制订时没有考虑与任何一种现有的编码方案保持兼容,这使得 GBK 与UNICODE 在汉字的内码编排上完全是不一样的,没有一种简单的算术方法可以把文本内容从UNICODE编码和另一种编码进行转换,这种转换必须通过查表来进行。

 ISO已经准备 了UCS-4方案,说简单了就是四个字节来表示一个字符

5 UNICODE到UTF8的转换规则

Unicode                      UTF-8
0000 - 007F                0xxxxxxx
0080 - 07FF             110xxxxx 10xxxxxx

0800 - FFFF           1110xxxx 10xxxxxx 10xxxxxx

6 传输及显示

 为了在不同的计算机上经过传输显示汉字, 需要根据程序编码进行相应转换

-- 程序编码使用gb2312, 需要经过gb2312->unicode->utf-8()-unicode->gb2312,。

--程序编码使用unicode,只需转换为utf-8再传输即可。 即unicode->utf-8()-unicode。

7 关于字符集(character set)和编码(encoding)

--对于 ASCII、GB 2312、Big5、GBK、GB 18030 之类的遗留方案来说,基本上一个字符集方案只使用一种编码方案

 --比如 ASCII 这部标准本身就直接规定了字符和字符编码的方式,所以既是字符集又是编码方案;

对于 Unicode,字符集和编码是明确区分的。Unicode/UCS 标准首先是个统一的字符集标准。而 Unicode/UCS 标准同时也定义了几种可选的编码方案,在标准文档中称作「encoding form」,主要包括 UTF-8、UTF-16 和 UTF-32。
所以,对 Unicode 方案来说,同样的基于 Unicode 字符集的文本可以用多种编码来存储、传输。
所以,用「Unicode」来称呼一个编码方案不合适,并且误导。


  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值