美文网首页
字符集和编码的区别

字符集和编码的区别

作者: GEORGE_TIGER | 来源:发表于2020-02-28 21:03 被阅读0次

    字符集(Character set) 是一个系统支持的所有抽象字符的集合。通常以二维表的形式存在,二维表的内容和大小是由使用者的语言而定。如ASCII,GBxxx,Unicode等。

    字符编码(Character encoding) 是把字符集中的字符编码为特定的二进制数,以便在计算机中存储。每个字符集中的字符都对应一个唯一的二进制编码。

    字符集和编码的区别

    ascII、unicode、gb2312等都是字符集,用于定义编号指代的字符。utf-8,utf-16则是unicode的编码格式。

    ascII

    ascII只有128个,能表示英文、数字、常用符号。

    gb2312

    gb2312是中文特有的字符集,有2万多个字符,前128个和ascII保持一致,因此能兼容ascII。ascII码用1个字节表示,中文用2个字节表示。gbk是在gb2312基础上扩容而来的。

    unicode

    unicode则是为了让全球能用上统一的字符集而发明的,有6万多个字符,每个字符占2个字节,比如英文a,ascII是97、unicode则是0097(示意的说法)。中文只收录最常用的6000多个汉字。unicode虽然是大一统的标准,但是在表示英文时浪费空间,并且许多古老的程序只支持ascII,unicode从标准设计上来说是不兼容ascII。正因如此在实际使用中unicode会以utf-8,utf-16等编码方式存储是传输。utf-8保持和ascII一致,英文使用1个字节,其他字符使用2-6个字节,比如中文多数是3个字节。

    相关文章

      网友评论

          本文标题:字符集和编码的区别

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