字符编码

上传人:小** 文档编号:59018646 上传时间:2018-11-03 格式:PPT 页数:49 大小:1,024KB
返回 下载 相关 举报
字符编码_第1页
第1页 / 共49页
字符编码_第2页
第2页 / 共49页
字符编码_第3页
第3页 / 共49页
字符编码_第4页
第4页 / 共49页
字符编码_第5页
第5页 / 共49页
点击查看更多>>
资源描述

《字符编码》由会员分享,可在线阅读,更多相关《字符编码(49页珍藏版)》请在金锄头文库上搜索。

1、1,字 符 编 码,2,提 纲,一 计算机中字符的表示(ASCII码) 二 计算机中中文字符的表示,3,概 述,在计算机中,各种信息都是以二进制编码的形式存在不管是文字、图形、声音、动画,还是电影等信息,在计算机中都是以和组成的二进制代码表示 计算机之所以能区别这些不同的信息,是因为它们采用的编码规则不同比如:同样是文字,英文字母与汉字的编码规则就不同,前者采用单字节的ASCII码,后者采用双字节的汉字内码 但随着需求的变化,这两种编码有被统一的UNICODE码(由Unicode 协会开发的能表示几乎世界上所有书写语言的字符编码标准)所取代的趋势,一、计算机中字符的表示(ASCII码),ASC

2、II(American Standard Code for Information Interchange,美国标准信息交换码)规定了常用的数字、字符的编码。标准ASCII码采用7位二进制编码,对应的ISO标准为ISO646标准,最多可以表示128个字符。 每个字符可以用一个字节表示,字节的最高位为0。,5,ASCII码表(二进制),基本ASCII码字符的分类,显示字符 范围为33126,共94个,指能从键盘输入、可以显示和打印的字符。,控制字符范围是032和127,共34个,主要用于控制输入、输出设备。,6,基本ASCII码字符的内容,解读基本ASCII码字符内容,第032号及第127号共3

3、4个,为非打印字符,是控制字符或通讯专用字符,如控制符:LF(换行)、CR(回车)、FF(换页)、DEL(删除)、BEL(振铃)等;通讯专用字符:SOH(文头)、EOT(文尾)、ACK(确认)等。,第33126号共94个可打印字符,其中第4857号为09十个阿拉伯数字;6590号为26个大写英文字母,97122号为26个小写英文字母,第127个(126号)为“”,其余为一些标点符号、运算符号等。,从键盘上按键输入“ CHINA”的字串,传送进计算机的,则是01000011、01001000、01001001、01001110、01000001这五个二进制数字串。 比较字符ASCII码值的大小空

4、格标点符号数字大写字母小写字母 十进制数字符号的ASCII码值与其二进制值的区别,10,ASCII码表示 vs. 二进制表示,int型数 10000的表示,内存存储形式,0010011100010000,二进制形式,0011000100110000001100000011000000110000,ASCII形式,文本存储形式,1 0 0 0 0,213 + 210 +29 +28 +24 = 8192 + 1024 + 512 + 256 + 16,关于最高位,若在该位置1,可表示一些特殊的符号(图形符) 由于ASCII码只用了字节的七个位,最高位并不使用,所以后来又将最高的一个位也编入这套编

5、码码中,成为八个位的延伸ASCII(Extended ASCII)码,这套内码加上了许多外文和表格等特殊符号,成为目前常用的编码。,若将传送数据的该位置1,则用于数据传输校验 虽然标准ASCII码是7位编码,但由于计算机基本处理单位为字节(1byte = 8bit),所以一般仍以一个字节来存放一个ASCII字符。每一个字节中多余出来的一位(最高位)在计算机内部通常保持为0(在数据传输时可用作奇偶校验位)。,11,12,关于数据传输的奇偶校验,在计算机的存储单元中,一个ASCII码值占一个字节(8个二进制位),其最高位(b7)用作奇偶校验位。所谓奇偶校验,是指在代码传送过程中用来检验是否出现错误

6、的一种方法,一般分奇校验和偶校验两种。奇校验规定:正确的代码一个字节中1的个数必须是奇数,若非奇数,则在最高位b7添1;偶校验规定:正确的代码一个字节中1的个数必须是偶数,若非偶数,则在最高位b7添1。,14,ASCII码表基本集(2,10,8,16进制),ASCII码表的扩展集EASCII,扩展ASCII编码(Extended ASCII,延伸美国标准信息交换码)是将基本ASCII码由7位扩充为8位,表示256个字符。 基本ASCII码:最高位为0,称为基本ASCII码; 扩充的ASCII码:最高位为1,扩充部分编码范围为1000000011111111,相应的十进制数为128255 用AS

7、CII码组成的文件,称为“文本文件”,其扩展名为.TXT。,15,16,ASCII码表的扩展集,17,ASCII码表基本集+扩展集(16进制),Microsoft Windows,IBM PC DOS,18,二、计算机中中文字符的表示 汉字交换码,又称“国标码”,即GB2312-1980,是中华人民共和国国家标准汉字交换编码。汉字信息在计算机内部也是以二进制方式存放。由于汉字数量多,用一个字节的128种状态不能全部表示出来,因此在1981年我国颁布的信息交换用汉字编码字符集基本集,即准GB2312-80方案中规定用两个字节的十六位二进制表示一个汉字,每个字节都只使用低7位(与ASCII码相同)

8、,即有128128=16384种状态。,19,二、计算机中中文字符的表示 汉字交换码,由于ASCII码的34个控制代码在汉字系统中也要使用,为不致发生冲突,不能作为汉字编码,128除去34只剩94种,所以汉字编码表的大小是9494=8836,用以表示国标码规定的汉字6763个(一级汉字,是最常用的汉字,按汉语拼音字母顺序排列,共3755个;二级汉字,属于次常用汉字,按偏旁部首的笔划顺序排列,共3008个),数字、字母、符号等682个,共7445个。,20,二、计算机中中文字符的表示 汉字交换码,国家标准将每个汉字和图形符号的两个字节分别用两位的十进制编码(不足补),前字节的编码称为区码,后字节

9、的编码称为位码,排列在一个94行94列的二维代码表中,形成区位码表。如“保”字在二维代码表中处于17区第03位,区位码即为1703D 。把区位码按一定的规则转换成的二进制代码叫做信息交换码(简称国标码)。,21,二、计算机中中文字符的表示 汉字交换码,国标码并不等于区位码,它是由区位码稍作转换得到,其转换方法为:先将十进制区码和位码转换为十六进制的区码和位码,这样就得了一个与国标码有一个相对位置差(20H)的代码;再将这个代码的第一个字节和第二个字节分别加上20H,就得到国标码。 如:“保” 字的国标码为(3123)H,它是经过下面的转换得到的:国标码很少直接使用。,22,GB码简介,国标码(

10、GB)是指1981年我国公布的国家标准信息交换用汉字编码字符集基本集,包含: 简化汉字,符号,字母,日文假名,共7445个字符; 其中包含了6763个汉字,并分作两级: 一级为常用字,3755个,按照拼音排序 二级为次常用字,3008个,按照部首排序。,23,GB码的编码空间,一个字符的国标码由两个部分组成,分别是该字符的区号和位号。 GB码规定共有94个区,每个区中有94个位。 编码空间为:94 * 94 = 8836 个码位 1 9 区是西文字母、数字、日文假名、图形符号 1687区是汉字区,其中 16 55 区 是一级汉字(40 * 94 - 5 = 3755个) 56 87 区 是二级

11、汉字(32 * 94 = 3008个) 1015,8894区是用户自定义区,24,GB码区位示例,01区,78位,25,GB码区位示例(续),26,GB码区位示例(续),27,GB码区位示例(续),28,GB码区位示例(续),29,二、计算机中中文字符的表示 汉字内码,就是汉字在计算机内部所使用的编码。当将汉字通过使用外码输入到计算机中后,计算机为了识别汉字,必须将汉字的外码转换为汉字的内码,以便处理和存储汉字信息。在计算机系统中,通常使用两个字节来表示一个汉字的内码。,30,二、计算机中中文字符的表示 汉字内码,由于国标码不能直接存储在计算机内,为方便计算机内部处理和存储汉字,又区别于ASC

12、II码,将国标码中的每个字节在最高位改设为1,这样就形成了在计算机内部用来进行汉字的存储、运算的编码叫机内码(或汉字内码,或内码)。内码既与国标码有简单的对应关系,易于转换,又与ASCII码有明显的区别,且有统一的标准(内码是惟一的)。,31,二、计算机中中文字符的表示 汉字内码,国标码是汉字信息交换的标准编码,但因其前后字节的最高位为0,与ASCII码发生冲突,如“保” 字,国标码为31H和23H(区位码为1103H),而西文字符“1”和“#”的ASCII码也分别为31H和23H。现假如内存中有两个字节为31H和23H,这到底是一个汉字,还是两个西文字符“1”和“#”?于是就出现了二义性。,

13、32,二、计算机中中文字符的表示 汉字内码,显然,国标码是不可能在计算机内部直接采用的。于是,汉字的机内码采用变形国标码。其变换方法为:将国标码的每个字节都加上128(80H),即将每个字节的最高位由0改1,其余7位不变。或将区码和位码各加A0H(十进制160)。如: “保”字的国标码为3123H,前字节为00110001B,后字节为00100011B,高位分别改1为10110001B和10100011B ,即为B1A3H,因此, “保”字的机内码就是B1A3H。,33,二、计算机中中文字符的表示 汉字输入码,无论是区位码或国标码都不利于输入汉字,为方便汉字的输入而制定的汉字编码,称为汉字输入

14、码,又称“外码”,即各种输入法编码方案。常见的输入法有以下几类: 按汉字的排列顺序形成的编码(流水码):如区位码; 按汉字的读音形成的编码(音码):如全拼、简拼、双拼等; 按汉字的字形形成的编码(形码):如五笔字型、郑码等; 按汉字的音、形结合形成的编码(音形码):如自然码、智能ABC。 输入码在计算机中必须转换成机内码,才能进行存储和处理。,34,二、计算机中中文字符的表示 汉字字形码(输出码),汉字字形码是对汉字的形状进行二进制编码,主要用来显示或打印汉字, 是表示汉字字形的字模数据,常用点阵、矢量函数等方式表示。为了将汉字在显示器或打印机上输出,把汉字按图形符号设计成点阵图,就得到了相应

15、的点阵代码字形码。 全部汉字字形码的集合叫汉字字库。汉字库可分为软字库和硬字库。软字库以文件的形式存放在硬盘上,现多用这种方式,硬字库则将字库固化在一个单独的存储芯片中,再和其它必要的器件组成接口卡,插接在计算机上,通常称为汉卡。,35,二、计算机中中文字符的表示 汉字字形码(输出码),用于显示的字库叫显示字库。显示一个汉字一般采用1616点阵或2424点阵或4848点阵。已知汉字点阵的大小,可以计算出存储一个汉字所需占用的字节空间。例:用1616点阵表示一个汉字,就是将每个汉字用16行,每行16个点表示,一个点需要1位二进制代码,16个点需用16位二进制代码(即2个字节),共16行,所以需要

16、16行2字节/行=32字节,即1616点阵表示一个汉字,字形码需用32字节。 即:字节数=点阵行数点阵列数/8 用于打印的字库叫打印字库,其中的汉字比显示字库多,而且工作时也不像显示字库需调入内存。,36,二、计算机中中文字符的表示 汉字字形码(输出码),可以这样理解,为在计算机内表示汉字而统一的编码方式形成汉字编码叫内码(如国标码),内码是惟一的。为方便汉字输入而形成的汉字编码为输入码,属于汉字的外码,输入码因编码方式不同而不同,是多种多样的。为显示和打印输出汉字而形成的汉字编码为字形码,计算机通过汉字内码在字模库中找出汉字的字形码,实现其转换。 例1:已知汉字“春”的国标码为343AH,求其机内码。 机内码=区位码+A0A0H=国标码+8080H=343AH+8080H=B4BAH 例2:用2424点阵来表示一个汉字(一点为一个二进制位),则2000个汉字需要多少KB容量? (2424/8)2000/1024=140.7KB141KB,

展开阅读全文
相关资源
相关搜索

当前位置:首页 > 商业/管理/HR > 管理学资料

电脑版 |金锄头文库版权所有
经营许可证:蜀ICP备13022795号 | 川公网安备 51140202000112号