计算机编码

版权声明:本文为博主原创文章,未经博主允许不得转载。 https://blog.csdn.net/sinat_22319877/article/details/51276126

        说到计算机编码,首先我们聊一下计算机编码的来源,我们很多人都应该知道,计算机只能识别1和0,也就是说计算机只能处理二进制的数据,比如101010101这样的数据。  

        为了让计算机去识别其他数据,比如比如0-9,a-z,A-Z,等等一些字符,我们是需要制定一套规则来表示的,比如A用1110来表示,B用1111来表示,制定了这样的规则后,计算机就可以去实现识别其他字符了。那么这套规则就叫做计算机编码。

        所以计算机编码就是计算机2进制数字和其他字符的映射的关系。

       下面我们就来聊一下计算计中常见的计算机编码:

         1.ASCII码:

         美国国家标准协会制定了一种编码,称为ASCII码。

         这种编码方式是用一个字节(8位数二进制)来表示一个字符,理论上共可以表示2^8=256个字符。因为美国国家语言是英语,只要能表示0-9,a-z,A-Z,特殊符号就可以了。所以这种编码对美国等使用英语的国家是非常适用的。

          2.ANSI编码:

          但是对于其他国家来说,比如中国,我们的汉字数量是非常多的,256个字符完全不够用,所以很多国家为了显示本国的语言,都对ASCII编码进行了扩展,使用2个字     节进行表示(16位二进制数,理论上可以表示2^16=65536个字符),统称为ANSI编码,这其中有:

                   GB2312:中国的GB2312码,它包括了6763个汉字,600多个字符。

                   GBK  :后来为了一些罕见的字符,我们国家有对GBK2312进行了扩展,用来显示罕见的,古汉语汉字(已经收录了2.1万个,K的含义就是扩展的意思)

                    JIS   :日本的 JIS码

                    BIG5  :台湾的BIG5(繁体字)

                    等等…

          3. Unicode码:

           后来为了解决传统的字符编码方案的局限性,和兼容性问题,产生了Unicode编码,它用4个字节(32位二进制)表示一个字符,解决了兼容性问题,虽然想法很不错,但是效率太低。

           4.utf8码:

           是一种针对unicode的可变长度的字符编码,又称为万国码。比如a-z用一个字节表示,但是汉字用3个字节表示。既减少了长度,又保证了兼容性。

           结束语:所以utf8成为了我们现在使用最多的一种编码方式!


阅读更多

没有更多推荐了,返回首页