字符集vs字符编码vs编码字符集

本文揭示字符集与编码的关系,重点讲解ASCII、Unicode的基本概念,以及UTF-8编码的出现原因和优势,帮助理解为何需要统一字符表达。

        时常听到Unicode,UTF-8,ASCII,GBK。。。一系列与字符相关的概念,傻傻分不清楚。

背景介绍

        我们在计算机屏幕上看到的是实体化的文字,而在计算机存储介质中存放的实际是二进制的比特流。那么在这两者之间的转换规则就需要一个统一的标准,为了实现转换标准,各种字符集标准就出现了。简单的说字符集就规定了某个文字对应的二进制数字存放方式(编码)和某串二进制数值代表了哪个文字(解码)的转换关系。

相关概念

        字符集:一个规则集合的名字,对应到真实生活中,字符集就是对某种语言的称呼。例如:英语,汉语,日语,ASCII。

        编码字符集:用一个编码值code point来表示一个字符在字库中的位置。

        字符编码: 将编码字符集和实际存储数值(二进制,十六进制等等)之间的转换关系。

为啥有了字库表,还非要通过字符编码将其转化成编码字符集,不直接使用字库表的序号表示呢?

        世界太大,不同地区所使用的语言比较专一,字库表虽然涵盖所有,但是对于相差较大的中文和英语表示起来成本较高(ASCII一个字符,而中文可能要三个),所以需要通过 UTF-8编码这种变长编码来进行统一表达。

推荐阅读: 十分钟搞清字符集和字符编码 • cenalulu's Tech Blog

推荐阅读: Strings, bytes, runes and characters in Go - The Go Programming Language

评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
红包 添加红包
表情包 插入表情
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值