ASCII-->Ansi-->Unicode-->UTF8 关于编码 自己的总结
2017-02-11 18:29
288 查看
各种不同的编码 无非就是效率 最大化。
我猜测编码的进化流程:
ASCII(American Standard Code for Information Interchange)----满足了美国和西方国家。但是只能传输英文。------->>>
Ansi(American National Standards Institute)------后来各个国家眼热 为了自己的安全,因为要战争吗,设计了自己的一套。可以传输英文和本土语言------->>>
Unicode(Universal code 也可以称UTF-16)-------------后来不打仗了,各个国家要合作共赢,于是国际组织设计了一套包容全球语言的编码,这种编码的最小字节是2个字节,具体哪个国家的语言再前,哪个国家再后,要看这个国家的实力了,非洲没实力,所以只能靠后排,那么就会导致一个非洲英文字母a 都需要4个字节,操蛋。那个时候的中国有点实力还好,大多数常用中文70%只占2个字节,不常用的(30%)占3个字节------------>>>
UTF-8(8-bit Unicode Transformation Format)-------unicode的设计目的是为了用一种设计方式,兼容全球语言,方便全球通信,但是设计的时候,我猜测有过争执,到底 最小字节是1还是2呢。这个是没有答案的,看对谁有利了。如果最小用一个字节 则对西方国家有利。如果最小用2个字节 则对除了西方国家 的其它国家都有利。举例:东方国家 中国 日本 韩国 非洲国家 中东地区的国家 等等。unicode 即UTF-16 用最小2个字节 是一种适中的方法,就是说 牺牲一点西方国家 但是 能兼顾到很多国家 。就这 西方国家不满意了,毕竟 西方国家是贪婪的 资本主义。他们认为 不应该牺牲 他们 来兼顾更多的国家。于是 他们又发明了 或者说 unicode的另一种表达方式 用 最小1个字节开始 来表达。这样 对西方国家 就有利。因为英文只占一个字节,但是对其它国家都不利,因为会导致 其它国家的排序 更靠后。比如中文UTF-8下 50%的中文占两个字节,30%占3个字节,20%占4个字节。
所以根据情况来选择了,如果你是西方国家 不想走向国际的话 就只用 ascii就行 1个字节。如果要走向国际 有两种选择要么UTF-8 要么UNICODE,如果你以本土为主 其它国家为辅 可以UTF-8,如果以其它国家为主
可以UNICODE。
如果你是东方国家 比如中国,不想走向国际 挣很多国家的钱的话 可以用ansi 即GBK 最节省资源。如果你要走向国际 要么UTF-8 要么UNICODE ,中国人口多 中国为主的话 可以 UNICODE 西方为主的话 可以 UTF-8.
凡事有利有弊 ,自己根据情况 酌情选择。
到点了 得赶紧回去吃饭了。
我猜测编码的进化流程:
ASCII(American Standard Code for Information Interchange)----满足了美国和西方国家。但是只能传输英文。------->>>
Ansi(American National Standards Institute)------后来各个国家眼热 为了自己的安全,因为要战争吗,设计了自己的一套。可以传输英文和本土语言------->>>
Unicode(Universal code 也可以称UTF-16)-------------后来不打仗了,各个国家要合作共赢,于是国际组织设计了一套包容全球语言的编码,这种编码的最小字节是2个字节,具体哪个国家的语言再前,哪个国家再后,要看这个国家的实力了,非洲没实力,所以只能靠后排,那么就会导致一个非洲英文字母a 都需要4个字节,操蛋。那个时候的中国有点实力还好,大多数常用中文70%只占2个字节,不常用的(30%)占3个字节------------>>>
UTF-8(8-bit Unicode Transformation Format)-------unicode的设计目的是为了用一种设计方式,兼容全球语言,方便全球通信,但是设计的时候,我猜测有过争执,到底 最小字节是1还是2呢。这个是没有答案的,看对谁有利了。如果最小用一个字节 则对西方国家有利。如果最小用2个字节 则对除了西方国家 的其它国家都有利。举例:东方国家 中国 日本 韩国 非洲国家 中东地区的国家 等等。unicode 即UTF-16 用最小2个字节 是一种适中的方法,就是说 牺牲一点西方国家 但是 能兼顾到很多国家 。就这 西方国家不满意了,毕竟 西方国家是贪婪的 资本主义。他们认为 不应该牺牲 他们 来兼顾更多的国家。于是 他们又发明了 或者说 unicode的另一种表达方式 用 最小1个字节开始 来表达。这样 对西方国家 就有利。因为英文只占一个字节,但是对其它国家都不利,因为会导致 其它国家的排序 更靠后。比如中文UTF-8下 50%的中文占两个字节,30%占3个字节,20%占4个字节。
所以根据情况来选择了,如果你是西方国家 不想走向国际的话 就只用 ascii就行 1个字节。如果要走向国际 有两种选择要么UTF-8 要么UNICODE,如果你以本土为主 其它国家为辅 可以UTF-8,如果以其它国家为主
可以UNICODE。
如果你是东方国家 比如中国,不想走向国际 挣很多国家的钱的话 可以用ansi 即GBK 最节省资源。如果你要走向国际 要么UTF-8 要么UNICODE ,中国人口多 中国为主的话 可以 UNICODE 西方为主的话 可以 UTF-8.
凡事有利有弊 ,自己根据情况 酌情选择。
到点了 得赶紧回去吃饭了。
相关文章推荐
- 关于编码: ascii(ansi), gb-2312, unicode, utf8(续)
- 关于编码: ascii(ansi), gb-2312, unicode, utf8
- 【转】【编码】ANSI,ASCII,Unicode,UTF8之一
- 关于ASCII、GB231、GBK、UTF-8/UTF8、ANSI、unicode的学习笔记
- 字符编码【utf8,unicode,ANSI,ascii】
- ASCII、Ansi、Unicode、UTF8编码异同
- 转发一篇关于ANSI,Unicode,UTF-8编码的文章,我认为是最容易动的,最详细的
- 计算机编码简介(ASCII、ANSI、EBCDIC、Unicode)
- 字符编码的故事(ASCII,ANSI,Unicode,Utf-8)
- 关于编码:ANSI、UNICODE、UTF-8、GB2312、GBK、DBCS、UCS ...
- ASCII,Unicode,UTF-8,GB2312一些关于编码的理解
- CB2010使用一段时间总结。(Ansi->Unicode)
- 字符编码的故事(ASCII,ANSI,Unicode,Utf-8)
- Ansi、Unicode、UTF8等编码字符串之间的转换和写入文本文件(学习中……)
- ASCII,unicode, utf8 ,big5 ,gb2312,gbk,gb18030等几种常用编码区别
- ANSI,ASCII,Unicode,UTF8 , UTF16的区别与联系
- Ansi、Unicode、UTF8等编码字符串之间的转换和写入文本文件(学习中……)
- 关于UNICODE,ANSI字符集和相关字符串操作的总结
- Ansi、Unicode、UTF8等编码字符串之间的转换和写入文本文件(学习中……)
- VC2005中fopen的ccs=UNICODE实测<zt> + UTF8 如何转变为 ansi