zoukankan      html  css  js  c++  java
  • 几个基本字符集(转自网络)

    ASCII 

    參考:http://zh.wikipedia.org/wiki/ASCII

    American Standard Code for Information Interchange,美国信息交换标准代码

    用一个字节表示128个字符。当中不可显示字符33个.33个字符中有一些是已经废除的控制字符。

    另外就是95个可显示字符。

    128个字符显然不够用。仅仅能支持26个英文字母,阿拉伯数字和标点符号。

    详细字符表參考上面的wiki地址。

    注意,一个字节最多能够表示256个字符。可是ASCII并没有使用最高位。因此7位仅仅能表示128个字符。

    ISO/IEC 8859-1 

    參考:http://zh.wikipedia.org/wiki/ISO/IEC_8859-1

    既然ASCII有高位不用,这么浪费。8859-1又称Latin-1字符集在ASCII后面空置的0xA0-0xFF的范围内,增加96个字母符号,藉以供使用附加符号拉丁字母语言使用。

    这个字符集仍然不能支持全世界的语言文字。

    GB2312

    參考:http://zh.wikipedia.org/wiki/Gb2312

    GB 2312 是中国国家标准中文简体字符集,全称《信息交换用汉字编码字符集·基本集》,又稱GB0


    GB 2312标准共收录6763个汉字,当中一级汉字3755个,二级汉字3008个。同一时候收录了包含拉丁字母希腊字母日文平假名片假名字母、俄语西里尔字母在内的682个字符。

    GB2312并不能支持全部罕见字,因此又有后来的GB系列字符集。

    2312字符集单位是区,每一个区包括94个字符或者汉字.一共同拥有94个区。

    • 01-09区为特殊符号,包含字母和数字。
    • 16-55区为一级汉字,按拼音排序。
    • 56-87区为二级汉字,按部首/笔画排序。

    10-15区及88-94区没实用。

    汉字在2312中用两个字节表示。高位字节是区的编号+0xA0,低位字节是该区的汉字所在编号+0xA0。比方'啊'字,在2312的16区第一个。

    因此两个字节表示为:0xB0=0xA0+16,0xA1=0xA0+1 也就是:0xB0A1.

    这样的加上0xA0的编码方法叫做EUC.參考:http://zh.wikipedia.org/wiki/EUC

    完整字符集表參考:http://www.knowsky.com/resource/gb2312tbl.htm

    注意,总是两个字节表示字符。比方A的相应编码是0xA3C0.

    这些在2312字符集中的字符都是全角。


    Unicode

    unicode(统一码)用来表示全世界全部文字。而且仍然在不断发展。參考:http://baike.baidu.com/view/40801.htmhttp://zh.wikipedia.org/zh-cn/Unicode

    编码方式:

    Unicode用数字0-0x10FFFF来映射这些字符。最多能够容纳1114112个字符。

    实现方式:

    我个人的理解是,用哪个整数代表某个字符是Unicode规范说了算。可是这个整数怎样在内存中存储,在网络上传输,能够有不同的实现方式。举例来说:utf-8编码就是用1-4个字节来表示整数的一种变长实现方式,能够节省存储空间和网络传送的数据量。

    Unicode的实现方式不同于编码方式。

    一个字符的Unicode编码是确定的。

    可是在实际传输过程中,因为不同系统平台的设计不一定一致,以及出于节省空间的目的,对Unicode编码的实现方式有所不同。Unicode的实现方式称为Unicode转换格式(Unicode Transformation Format,简称为UTF)

    UTF-8节省空间,是1到4个字节的变长存储方式。參考:http://zh.wikipedia.org/wiki/UTF-8

    UTF-16固定为两字节表示,可是依据字节顺序的不同,又有UTF-16 BE和LE之差别

  • 相关阅读:
    Linux-diff命令
    Linux-查看文件内容命令
    Linux-tar命令
    Linux-df -h命令
    Linux-mkdir命令&touch命令
    Linux-cd命令&pwd命令
    Linux-zip命令&rz命令&sz命令
    Linux-npm install命令&脚本命令
    Linux-tail命令
    Linux-cat命令
  • 原文地址:https://www.cnblogs.com/zfyouxi/p/5306383.html
Copyright © 2011-2022 走看看