美文网首页
17.各种字符集的关系

17.各种字符集的关系

作者: 未知的证明 | 来源:发表于2019-03-09 12:42 被阅读0次

美国:ASCII(American Standard Code for Infomation Interchange,美国信息交换标准代码),共计可以表示128种字符

法国,德国等,ISO-8859-1:8表示一个字符,即用一个字节(byte)(8bit)来表示一个字符,共计可以表示256个字符。

国标:gb2312就出现了,使所有的汉字进行了编码,生僻字不表示,也不够用了

GBK:解决了生僻字

后来发现还不够用,gb18030来解决

big5台湾繁体字

后来发现这样比较乱,一个组织定义了Unicode,包括了全世界所有字符,采用了两个字节表示一个字符,对于只需要英文字母的国家来说,太占空间了,所以出现了UTF-8
其中UTF为Unicode Translation Format

Unicode是一种编码方式,utf是一种存储格式,不管utf-8还是UTF-16等等,都是Unicode实现方式之一。

UTF-16LE,UTF16-BE,前两个字节来区别大端和小端

utf-8一般通过3个字节来表示一个中文,ASCII码值用一个字节

utf-8实现方式

互联网的普及,强烈要求出现一种统一的编码方式。UTF-8 就是在互联网上使用最广的一种 Unicode 的实现方式。其他实现方式还包括 UTF-16(字符用两个字节或四个字节表示)和 UTF-32(字符用四个字节表示),不过在互联网上基本不用。重复一遍,这里的关系是,UTF-8 是 Unicode 的实现方式之一。

UTF-8 最大的一个特点,就是它是一种变长的编码方式。它可以使用1~4个字节表示一个符号,根据不同的符号而变化字节长度。
UTF-8 的编码规则很简单,只有二条:

  1. 对于单字节的符号,字节的第一位设为0,后面7位为这个符号的 Unicode 码。因此对于英语字母,UTF-8 编码和 ASCII 码是相同的。

  2. 对于n字节的符号(n > 1),第一个字节的前n位都设为1,第n + 1位设为0,后面字节的前两位一律设为10。剩下的没有提及的二进制位,全部为这个符号的 Unicode 码。
    下表总结了编码规则,字母x表示可用编码的位。


    image.png

    跟据上表,解读 UTF-8 编码非常简单。如果一个字节的第一位是0,则这个字节单独就是一个字符;如果第一位是1,则连续有多少个1,就表示当前字符占用多少个字节。

下面,还是以汉字严为例,演示如何实现 UTF-8 编码。

严的 Unicode 是4E25(100111000100101),根据上表,可以发现4E25处在第三行的范围内(0000 0800 - 0000 FFFF),因此严的 UTF-8 编码需要三个字节,即格式是1110xxxx 10xxxxxx 10xxxxxx。然后,从严的最后一个二进制位开始,依次从后向前填入格式中的x,多出的位补0。这样就得到了,严的 UTF-8 编码是11100100 10111000 10100101,转换成十六进制就是E4B8A5

相关文章

  • 17.各种字符集的关系

    美国:ASCII(American Standard Code for Infomation Interchang...

  • 关于JavaScript编码你应该知道的

    1. 字符集和编码的关系 字符集是字符的集合,编码则是字符集中的字符要如何存储的规则。 如上图,当字符集和编码一一...

  • 【变量】python中的字符集和编码

    字符集和编码简介 在编程中常常可以见到各种字符集和编码,包括ASCII,MBCS,Unicode等字符集。确切的说...

  • MySQL字符集

    一.字符集介绍 什么是字符集(Charset) 字符集:是一个系统支持的所有抽象字符的集合。字符是各种文字和符号的...

  • 字符集/字符编码

    什么是字符集字符集是一个系统支持的所有抽象字符的集合。是各种文字和符号的总称。 常见的字符集种类: ASCII 字...

  • Qt学习笔记(五)QString 字符串

    1、字符集 字符 Character:文字符号。字符集 Charset:字符的集合,规定一系列字符与数字的关系(编...

  • Node中的字符编码

    unicode 首先搞清两个概念,字符集 与 编码 字符集:字符集是一张码表,它规定了文字与数字的一一对应关系。与...

  • 编码算法

    在理清字符集和字符编码关系一文中我们介绍了常见字符集以及字符编码之间的关系,本期我们继续朝着这个方向介绍常见的编码...

  • 字符集与字符编码

    1.字符集字符集是字符的集合,是一系列字符与二进制序列的映射关系,例如ASCII字符集。2.字符编码字符编码是字符...

  • Unicode和UTF-8/UTF-16/UTF-32

    字符集和编码方式 字符集:是某组字符的集合.字符集定义了字符和二进制的关系,给每个字符分配一个唯一的ID编码方式:...

网友评论

      本文标题:17.各种字符集的关系

      本文链接:https://www.haomeiwen.com/subject/ggajpqtx.html