Chinaunix首页 | 论坛 | 博客
  • 博客访问: 244446
  • 博文数量: 76
  • 博客积分: 1400
  • 博客等级: 上尉
  • 技术积分: 660
  • 用 户 组: 普通用户
  • 注册时间: 2008-10-17 21:43
文章分类
文章存档

2011年(1)

2010年(9)

2009年(20)

2008年(46)

我的朋友

分类: C/C++

2010-03-26 09:20:57

GB2312标准共收录6763个汉字,其中一级汉字3755个,二级汉字3008个;同时,GB2312收录了包括拉丁字母、希腊字母、日文平假名及片假名字母、俄罗斯语西里尔字母在内的682个全形字符。           
        GB2312的出现,基本满足了汉字的计算机处理需要,它所收录的汉字已经覆盖99.75%的使用频率。GB2312中对所收汉字进行了“分区”处理,每区含有94个汉字/符号。这种表示方式也称为区位码。          
         01-09区为特殊符号。          
         16-55区为一级汉字,按拼音排序。           
         56-87区为二级汉字,按部首/笔画排序。          
         10-15区及88-94区则未有编码。        
        举例来说,“啊”字是GB2312之中的第一个汉字,它的区位码就是1601。字节结构在使用GB2312的程序中,通常采用EUC储存方法,以便兼容于ASCII。每个汉字及符号以两个字节来表示。第一个字节称为“高位字节”,第二个字节称为“低位字节”。 “高位字节”使用了0xA1-0xF7(把01-87区的区号加上0xA0),“低位字节”使用了0xA1-0xFE(把01-94加上0xA0)。例如“啊”字在大多数程序中,会以0xB0A1储存。(与区位码对比:0xB0=0xA0+16,0xA1=0xA0+1)。       
           所以GB2312编码中汉字区码的十进制是从176到247,位码是从161到255.之所以存储了6763小于72*94=6768,是因为在区码为215,位码为250-254之间共五个编码没有汉字编码,所以6768-5=6763个。

本文来自CSDN博客,转载请标明出处:http://blog.csdn.net/HEROWANG/archive/2008/06/10/2532339.aspx
阅读(832) | 评论(0) | 转发(0) |
给主人留下些什么吧!~~