ASCII, Unicode 与 UTF-8
Posted freshair_cnblog
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了ASCII, Unicode 与 UTF-8相关的知识,希望对你有一定的参考价值。
1,ASCII
由于计算机是美国人发明的,最早只有127个字符,即大小写英文字母、数字、一些符号,被编码到计算机里,这个编码表就是ASCII表。这时每个字符用1 Byte表示。
2,Unicode
当其他语言也需要在计算机上表示时,1 Byte显然不够,这时Unicode出现了。Unicode试图把所有语言统一到一套编码,它与ASCII的区别是:ASCII用1 Byte表示字符;Unicode通常用2 Bytes,极端情况下用4~6 Bytes。ASCII扩展到Unicode也很简单,在前面补0即可。
3,UTF-8
Unicode的一个问题是效率,如果全篇文本都是英文,那么与ASCII相比Unicode占用的空间至少多了一倍。这时候又出现了把Unicode转化为“可变长编码”的做法,这就是UTF-8。UTF-8把一个Unicode根据不同数字大小编码成1~6 Bytes,常用英文字母1 Byte,汉字通常是3 Bytes,只有很偏僻的字符才会编码成4~6 Bytes。
4,在计算机中的使用
在计算机内存,统一使用Unicode编码,当需要保存到硬盘或者需要传输时,转换成UTF-8。
例如,用记事本编辑文本时,
文件存在硬盘中,是UTF-8编码;用记事本打开文件,先转换成Unicode送到内存。
又例如,浏览网页时,
上述内容来自 廖雪峰。
以上是关于ASCII, Unicode 与 UTF-8的主要内容,如果未能解决你的问题,请参考以下文章