• ASCII、Unicode、UTF-8字符集编码


    ASCII码

      计算机内部,所有信息都是由二进制的字符串表示

      每一个二进制位有“0”、“1”两种状态,因此8个二进制位可以表示256个状态,每个状态代表一个符号就是256个符号,从0000000到11111111。

      上个世纪60年代,美国制定了一套字符编码,对英语字符与二进制位之间的关系,做了统一规定。这被称为ASCII码,一直沿用至今。

      ASCII码一共规定了128个字符的编码,比如空格"SPACE"是32(二进制00100000),大写的字母A是65(二进制01000001)。这128个符号(包括32个不能打印出来的控制符号),只占用了一个字节的后面7位,最前面的1位统一规定为0。

    Unicode码

      ASCII码通过1个字节的描述仅能表示256个字符,对于非英语国家的文字不能完全描述

      Unicode是一个很大的集合,现在的规模可以容纳100多万个符号,可以描述中文、法文、阿拉伯文字

      Unicode旨在建立一套能够描述所有字符的字符集,它使用2个字节来描述一个符号

      Unicode是一个符号集,它只规定了符号的二进制码,未规定其如何存储。

    UTF-8

      互联网的普及,强烈要求出现一种统一的编码方式。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码。

      

      

      

    参考:

      http://www.ruanyifeng.com/blog/2007/10/ascii_unicode_and_utf-8.html

      http://baike.baidu.com/link?url=mmbfGGUSEPtqy77MtHdub7ayrvfyfQ5hqTetq5tU5a6KmRi1ieBvfwBTb1CtwAQjJy48AQSKohmky-XaodqRE_

  • 相关阅读:
    安装wamp的方法及过程
    js原生获取className&多选一
    构造函数
    轮播图
    NaN
    ++与--运算练习
    if语句的练习
    switch语句的练习
    九九乘法表
    mac下git提交github代码
  • 原文地址:https://www.cnblogs.com/ybtools/p/6424587.html
Copyright © 2020-2023  润新知