【计算机理论+实践⭐002】简述计算机《编码表》发展史(ASCII, GBK, unicode, utf-8)

ASCII编码表的由来

ASCII编码表的由来,因为计算机只认识二进制,并且我们储存的所有数据最终也都是由二进制形式储存的,如果是数字那直接转换成二进制就可以了,但是字符就不行,比如英文中的26个字母,还有一些特殊的符号,所以就需要一个字符集,来记录每个字符对应的二进制是多少,美国就发布了ASCII编码表。

ASCII的第一版是由美国在1963年发布的。
在这里插入图片描述

在这里插入图片描述
在这里插入图片描述

unicode编码表

ASCII编码表仅仅满足了以英语为主的国家,韩语日语,中国的汉字,都各自有了自己的编码表,如中国的GBK,GB2312,韩文日语有东亚编码表,即
(East Asian Code Tables),对于世界这个大家庭而言,这样就乱套了,当我用GBK编码表,打开韩国某个网站结果显示的是乱码,因为GBK编码表里没有韩文编码规则,数据传过来但计算机不认识,这样可不行。于是就诞生了unicode编码表,所有国家统一使用这个编码表,所以你可以叫它“世界表”。
我们用python,ord打印一个汉字在unicode所对应的数字
在这里插入图片描述
但是unicode有个问题就是,它不管哪个国家的语言,它最少是占用两个字节,就是16bit,但是英语一个字节就可以表示,你非用2个字节,这样就浪费硬盘和内存。

所以就有了utf-8,还有utf-16,utf-32。

utf-16,能转二进制的16位就转16位,16位不够就转32位
utf-32,直接转32位的二进制,哪怕只占8位的数,如00000000 00000000 00000000 00000001
utf-8,8个bit够就用8个bit,不够就16bit,16bit不够就32个bit。

请添加图片描述

这种编码方式就解决了,unicode编码表浪费资源的情况。

最后总结:

请添加图片描述

  • 12
    点赞
  • 10
    收藏
    觉得还不错? 一键收藏
  • 28
    评论

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值