字符集要解决的第一个问题是描述文字,包括字符、数字和符号等。最开始的方案是ASCII,它的编码规则也很简单,一个code point占用一个字节。它由美国人发明,在英文环境下运行的很好。
当计算机越来越普及时,人们发现ASCII字符集无法显示其它国家的语言文字,比如中文,于是各个国家就开始发明自己的编码,中国人发明了GB2312和GBK等,来解决中文的显示问题。
为了避免各国自己造轮子,ISO看不下去了,搞了一个UNICODE字符集,直接解决了世界上所有的语言字符集问题。但是,另外一个问题随之而来,就是存储的问题,ASCII字符集中的英文,每个字符只需要占1个字节,而每个中文汉字至少需要占用两个字节,如果只存储英文的话,就会造成存储空间的巨大浪费。
再后来,随着互联网的出现,UTF-8出现了,并成为了现在的标准。它是Unicode的一种变长的实现方式,可以使用1~4个字符来表示一个符号,它规定了什么字符占用1个字节,什么字符占用2个字节等。
unicode是字符集,用来描述符号,为全世界的所有符号预留了一个唯一的code point(码点),就是Unicode世界的一个代号,本质就是一个数字。
utf-8是编码规则,就是如何将code point转换为字节,从而可以进入计算机的世界。
版权说明 : 本文为转载文章, 版权归原作者所有 版权申明
原文链接 : https://blog.csdn.net/daguanjia11/article/details/121236274
内容来源于网络,如有侵权,请联系作者删除!