大话编码解码

1.总述

ASCII:1967诞生的只有128个拉丁字母的编码方式,GB2312是一个汉化的ASCII,unicode是1990推出的全球编码标准。UTF和GBK都是基于unicode的实现,GBK是汉化的UTF,二者要互通都必须先转为unicode。

2.编年史

1967:ASCII(American Standard Code for Information Interchange)存写和运行一体,美国推出世界推行,一共128字符。相当于最简单的身份证,只有姓名和籍贯。

1981:GB2312又称为区位码,虽然ASCII通用,但是大陆无法推广,认识英语的毕竟少数人。精英使用ASCII之后,模仿ASCII在华语区搞出了GB2312。相当于搞出了中国自己的身份证。

1990:unicode(全名Unicode Character Set),简写UCS。世界各国都搞出了自己的编码,不同工具访问不同国家的资源就出现了乱码,美国推出的unicode,把各国的编码都塞了进去。相当于搞出了世界通行的护照标准。

1990:UTF(Unicode Transformation Format,简称为 UTF),unicode每个字节占用的资源太多,不便于存储和传输。类似于依据护照标准搞出了使用最广的护照。

1995:GBK是中国基于unicode标准,做了本土化之后的产品,不考虑国际化,没有特殊字符时,计算、传输效率等高很多。好比中国在自己的护照加了nfc等等。

3.战争史

ASCII:美国的第一代产品,西方世界使用拼写语言的国家统统被攻占。

GB2312:汉语属于非拼写类,不适合用ASCII,本土化之后就是GB2312,那段时间有些大佬就是卖汉卡起家的。汉卡就是用来做编码解码的。

unicode:美国把各国类似于GB2312的东西,全部柔和在一起的产品。世界通行的标准。

UTF:基于unicode标准的实现,相当于美国提供了生产护照的一整套流水线。

GBK:基于unicode标准的实现,中国做了自己生产护照的一整套流水线。

4.彩蛋

Bom:大端和小端之争就是一个习惯问题,Byte Order Mark用于解决这个问题。人流方向是一个同源但不同解决方案的问题,人流有靠左有靠右,但是最后会归于同一个方向,因为和别人不同方向会遇到更大阻力。计算机代码总是习惯于用标志位解决这一类问题

编码:公司软要求UTF-8格式,这个美国定的,现在的各类编译器也基本是他们做的,考虑统一性原则都用UTF-8,编译时被错误解码的概率小。

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

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值