字符串与编码

(1)ASCII码

  • 一个字节表示的英文、数字、标点符号等字符。
  • 国际标准ASCII码为0-127即128个字符,二进制最高位为0,其余为扩展ASCII码。

(2)GB2312

  • 两字节,主要包含简体的常用中文及符号的字符集编码。

(3)GBK

  • 单双字节变长编码,主要包含简体与繁体中文和一些符号、偏旁部首的字符集编码。

(4)GB18030

  • GBK编码无法满足需求扩展,多出来的部分使用四字节编码,即单、双、四字节编码;
  • 扩展了汉字,还包括了少数民族文字;

(5)Unicode

  • 因各国语言、字符差异,Unicode将所有字符统一为一套字符集。
  • UTF-8、UTF-16、UTF-32是对Unicode字符集的不同编码方案。

(6)UTF-8

  • 变长编码方式,1-4字节表示一个字符,可节省存储空间;
  • 英文1字节,中文一般3字节,最多4字节;

编码规则:

  • 》单字节:同标准ASCII码,最高位为0,0-127表示128个字符
  • 》多字节:n字节,高位到低位,第一字节前n位为1,第n+1位为0;后面字节前两位为10;剩余位由低位向高位填补Unicode吗,多出补0;
    110XXXXX 10XXXXXX

    1110XXXX 10XXXXXX 10XXXXXX

你可能感兴趣的:(ascii码,utf-8,编码,字符串)