计算机中数据的表示与信息编码

上传人:s****a 文档编号:171616686 上传时间:2022-11-28 格式:DOCX 页数:8 大小:66.98KB
收藏 版权申诉 举报 下载
计算机中数据的表示与信息编码_第1页
第1页 / 共8页
计算机中数据的表示与信息编码_第2页
第2页 / 共8页
计算机中数据的表示与信息编码_第3页
第3页 / 共8页
资源描述:

《计算机中数据的表示与信息编码》由会员分享,可在线阅读,更多相关《计算机中数据的表示与信息编码(8页珍藏版)》请在装配图网上搜索。

1、计算机中数据的表示与信息编码计算机最主要的功能是处理信息,如处理文字、声音、图形和图像等信息。在计算机内 部,各种信息都必须经过数字化编码后才能被传送、存储和处理。因此要了解计算机工作的 原理,还必须了解计算机中信息的表现形式。1.2.1 计算机使用的数制1计算机内部是一个二进制数字世界计算机内部采用二进制来保存数据和信息.无论是指令还是数据,若想存入计算机中, 都必须采用二进制数编码形式,即使是图形、图像、声音等信息,也必须转换成二进制,才 能存入计算机中。为什么在计算机中必须使用二进制数,而不使用人们习惯的十进制数?原 因在于:(1)易于物理实现:因为具有两种稳定状态的物理器件很多,例如,

2、电路的导通与截止、电压的 高与低、磁性材料的正向极化与反向极化等。它们恰好对应表示1和 0两个符号。机器可靠性高:由于电压的高低、电流的有无等都是一种跃变,两种状态分明,所以0 和1 两个数的传输和处理抗干扰性强,不易出错,鉴别信息的可靠性好。运算规则简单:二进制数的运算法则比较简单,例如,二进制数的四则运算法则分别 只有三条。由于二进制数运算法则少,使计算机运算器的硬件结构大大简化,控制也就简单 多了。虽然在计算机内部都使用二进制数来表示各种信息,但计算机仍采用人们熟悉和便于阅读的 形式与外部联系,如十进制、八进制、十六进制数据,文字和图形信息等,由计算机系统将 各种形式的信息转化为二进制的

3、形式并储存在计算机的内部.2进位计数制 数制,也称计数制,是指用一组固定的符号和统一的规则来表示数值的方法。数制可分 为非进位计数制和进位计数制两种.非进位计数制的数码表示的数值大小与它在数中的位置 无关;而进位计数制的数码所表示的数值大小则与它在数中所处的位置有关。而我们在这里 讨论的数制指的都是进位计数制。进制是进位计数制的简称,是目前世界上使用最广泛的一种计数方法,它有基数和位权 两个要素. 基数:在采用进位计数制的系统中,如果只用r个基本符号(例如0,1,2,r1 )表示数值,则称其为r数制(Radixr Number System),称为该数制的基数(Radix). 如日常生活中常用

4、的十进制,就是r=10,即基本符号为0, 1, 2,:9。如取r=2,即基本 符号为0和 1,则为二进制数。 位权:每个数字符号在固定位置上的计数单位称为位权。位权实际就是处在某 一位上的1所表示的数值大小。如在十位制中,个位的位权是10。,十位的位权是IO】,; 向右依次是10-1, 10-2,。而二进制整数右数第2位的位权为2,第3位的位权为4,第4 位的位权为8。一般情况下,对于r进制数,整数部分右数第i位的位权为ri-1,而小数部分 左数第i位的位权为r-io各种进制的共同点是: 1每一种数制都有固定的符号集。如十进制数制,其符号有十个: 0, 1,2, , 9,二 进制数制,其符号只

5、有两个:0和1。需要指出的是,16进制数基数为16,所以有16个基本符 号,分别为0,1,2,:8, 9, A, B,C,D, E, F表1-3列出了计算机中常用的几种进制。采用位置表示法,用位权来计数。即处于不同位置的数符所代表的值不同,与它所在 位置的权值有关。例如:十进制的1358。 74可表示为:13 58 . 74=1x103+3X102+5x1O1+8x1Oo+7x 10-1+4x 10-2 可以看出,各种进位制中的位权的值恰好是基数的某次幂。因此,对于任何一个进位计 数制表示的数都可以写出按其权值展开的各项式之和,称为“按权展开式”任意一个n位 整数和m位小数的r进制数D可表示为

6、:Dn1 Dn-2D2 D1 D。Dm Dm1 Dm-2D2 D1n位整数m位数按基数来进位和借位(逢r进一,借一当r)。 现列举二进制的算术运算如下:从这里我们能够体会到二进制的运算的确能够起到简化 硬件的作用加法:0 + 0 = 0减法:0 0 = 00 + 1 = 10 1 = 1(借位) 1+0=110=11 + 1 = 10(进位)1 1 = 0 乘法:0 x 0 = 0 除法:o m 1 = 00 X1 = 01 m1 = 11x0=01x1=1表1-3计算机中常用的几种讲位数制进位制二进制八进制十进制十六进制规则逢二进一逢八进一逢十进一逢十六进一基数r=2r=8r=10r=16数

7、符0,10, 1,2,,70,1,0,1,2, -,9, A,B,C,D,E, F权2i8i10i16i表示符号BODH1.2.2 数制间的相互转换1非十进制数转换十进制数r进制转换为十进制数,采用r进制数的位权展开法,即将r进制数按“位权”展开形 成多项式并求和,得到的结果就是转换结果。【例1.1】【例1.1】把(11011.101)2转换成十进制数解:(11011.101) 2= 1524+ 1523+ 0522+ 1521+ 152o+ 1521+ 0522+ 152-3=16 + 8 + 0 + 2 + 1 + 0。5 + 0 +0.125 = (27。625)102十进制数转换非十进

8、制数 转换规则:整数部分采用“逐次除以基数取余”法,直到商为0;小数部分采用“逐次乘以基数取整”法,直到小数部分为0或取到有效数位。十进制数转换成二进制数:整数部分采用“除2取余”法;小数部分采用“乘2取整法十进制整数部分2 15 727 823 921929242 2余数【例1。2】把(157.6875)10转换成二进制数最高位最低位十进制小数部分0.6875x 21.3750x 20.7500x 21.5000x 2注:十进制小数不一定能转换成完全等值的二进制小数有时要取近似值。(0。6875)10= (1011) 2结果:(157。6875)10= (10011101.1011)2用同样

9、的方法,可将十进制数转换成八进制数和十六进制数,分别采用“除8取余,乘8 取整”和“除16取余,乘16取整”法。3. 非十进制数之间的转换 通常两个非十进制数之间的转换方法是采用上述两种方法的组合,即先将被转换数转换 为相应的十进制数,然后再将十进制数转换为其他进制数。由于二进制、八进制和十六进制 之间存在着特殊关系,即81=23, 161=24,因此转换方法就比较容易,如表14所示。二进制、八进制数之间的转换。 由于1位八进制数相当于3位二进制数,因此,二进制数转换成八进制数,只需以小数 点为界,整数部分按照由右至左(由低位向高位)、小数部分按照从左至右(由高位向低位) 的顺序每三位划分为一

10、组,最后不足3位二进制数时用零补足.按表1-4,每三位二进制数分 别用与其对应的八进制数码来取代 ,即可完成转换.而将八进制转换成二进制的过程正好相 反。【例1。3】将(11001110.01010111)2 转换成八进制数. (011001110.010101110) 2( 3 1 6.256 )/ 8【例1。4】将(574。623)8 转换成二进制数.(5 7 4.6 2 3 )8(101111100.110010011)2二进制、十六进制数之间的转换由于十六进制的1位数相当于二进制的4位数,因此二进制同十六进制之间的转换就如 同二进制同八进制之间的转换一样,只是4 位一组,不足补零.【例

11、1.5】将(11011 1110 0011。 1001 011) 2 转换成十六进制数.(0001101111100011.10010110)2二进制八进制二进制十六进制二进制十六进制1004010041100C1015010151101D1106011061110E1117011171111F总之,数在机器中是用二进制表示的,但是,二进制数书写起来太冗长,容易出错,而 且目前大部分微型机的字长是4位、8位、16位、32位和64位的,都是4 的整数倍,故在 书写时可用十六进制表示.一个字节(8 位)可用两位十六位进制数表示,两个字节(16 位) 可用 4 位十六进制表示等,书写方便且不容易出错

12、。1。2.3 二进制数在计算机内的表示计算机中的数据包括数值型和非数值型两大类.数值型数据指可以参加算术运算的数据,例如 (123)10、(1001。101)2 等。 非数值型数据不参与算术运算。例如字符串“电话号码:2519603”、“4的 3倍等于12 等都是非数值数据。注意这两个例子中均含有数字,如 2519603、4、3、12 ,但它们不能 也不需要参加算术运算,故仍属非数值数据。下面讨论数值型的二进制数的表示形式:1. 机器数 在计算机中,因为只有“0”和“1”两种形式,所以数的正负,也必须以“0和“1”表示.通 常把一个数的最高位定义为符号位,用0 表示正,1表示负,称为数符,其余

13、位仍表示数值。 把在机器内存放的正、负号数码化的作为一个整体来处理的二进数串称为机器数(或机器 字),而把机器外部由正、负表示的数称为真值数。例:真值为(+1010011)B的机器数为01010011,存放在机器中,等效于+83。需注意的是,机器数表示的范围受到字长和数据的类型的限制。字长和数据类型定了, 机器数能表示的数值范围也就定了。例如,若表示一个整数,字长为 8 位,则最大的正数为 0 1 1 1 1 1 1 1 ,最高位为符号位,即最大值为127 。若数值超出127 ,就要“溢出”。2. 数的定点表示和浮点表示 当计算机所需处理的数含有小数部分时,又出现了如何表示小数点的问题。计算机

14、中并不单 独利用某一个二进制位来表示小数点,而是隐含规定小数点的位置.根据小数点位置是否固 定,计算机中的数可分为定点数和浮点数两种。定点表示法:所谓定点表示法就是小数点在数中的位置固定不变,它总是隐含在预定位置 上.通常,对于整型数,小数点固定在数值部分的右端,即在数的最低位之后,其格式如图 12 所示;对于小数,小数点固定在数值部分左端,即在数的符号位之后、最高数位之前,其格式 如图 13 所示。sdfn-1d n-2 d0R-数值部分符号位小数点位置图1-2定点整数的存储格式符号位数值部分 小数点位置sddS C dD图1-3定点小数的存储格式例如:定点整数120用8位二进制数可表示为0

15、1111000,其中最高位0表示符号为正。根据计算机字长不同,如果用n个二进制位存放一个定点整数,那么它的表示范围为:2n-l2nl 1。说明:上面表示的整数的范围是以补码形式表示的,有关补码的知识在后面介绍。定点小数0。125用8位二进制数可表示为10010000,其中最高位1表示号为负。根据计算机字长不同,如果用n个二进制位存放一个定点小数(纯小数),其表示范围为:T(2-(n-1)。数的浮点表示 定点数用来表示整数或纯小数。如果,一个数既有整数部分,又有小数部分,采用定点格式就会引起一些麻烦和困难.因此,计算机中使用浮点表示方法。浮点表示法对应于科学(指数)计数法,如数110。011可表

16、示为N=110。011=1。10011x2+10=11001。1x2-10=0.110011x2+11浮点表示法中的小数点在数中的位置不是固定不变的,是浮动的。任何浮点数都由阶码和尾数两部分组成,阶码是指数,尾数是纯小数。其存储格式如图1-4所示。其中,数符和阶符都 各占一位,数符是尾数(纯小数)部分的符号位;而阶符为阶码(指数部分)的符号位。阶码 的位数随数值的表示的范围而定,尾数的位数则依数的精度而定.当一个数的阶码大于机器所能表示的最大阶码或小于机器所能表示的最小阶码时会产生“溢出”.阶符EIm-1Em-2 E0 f数符dn-1dn-2 d/0阶码尾数例如,设尾数为4位,阶码为数点位置则

17、二进制数N=1011均01尾的小数点数表示形式为0呀1-4浮点数存储格式1011阶符阶码数符尾数 应当注意的是:浮点数的正负是由尾数的数符确定的,而阶码的正、负只决定小数点的 位置,即决定浮点数的绝对值的大小.当浮点数的尾数为零或阶码为最小值时,机器通常规 定,把该数看作零,称为机器零.3。带符号数的表示在计算机中,带符号数可以用不同方法表示,常用的有原码、反码和补码。原码数X的原码记作X原,如果机器字长为n,由则原码的定义如下:例:X1 , X2的真值为 *=+1010110X2=1001010 ,原码表示为X0 WXv2n-1-1区原=“ 2n-1 +|X |X -(2n-0环X20八X原

18、=2n -|X|-(2nT-1)X =+1010110原=010101101 原原X = -1001010=110010102 原原由此可以看出,原码的最高位为符号位,正数为0,负数为1,其余n-1位表示数的真值的绝对值。其中,0的原码表示有两种,+0 =000000000 =10000000原原采用原码的优点是简单易懂,与真值转换方便,用于乘除法运算十分方便.但是对于加减法 运算就麻烦了,因为当两个同号数相减或两个异号数相加时,必须判断两个数的绝对值哪个 大,用绝对值大的数减去绝对值小的数,而运算结果的符号则应取与绝对值大的数相同符号。 要完成这些操作相当麻烦,还会增加运算器的复杂性.为了克

19、服原码的缺点,引进了数的补码 表示方法.补码数X的补码记作X补,如果机器字长为n,则补码的定义如下:补 X0 WXv2n-i-1X补=* 2n -|X|-2n-iWXW0正数的补码等于其原码本身;而负数的补码等于2n减去它的绝对值,即等于对它的原码(符 号位除外)各位取反,并在末位加1而得到的数。例:X1 ,X2的真值为 X1=+1010110X2=-1001010 ,补码表示为X =01010110X =101101101 补2补在补码中,0有唯一的编码: +0 =-0 =00000000补补补码可以将减法运算转化为加法运算,即实现类似代数中的x-y = x+(y)的运算.如补码 的加减法运

20、算规则:X+Y补=X补+ Y补X-Y= X补+Y补补补补补补补反码 反码是对负数原码除符号位外逐位取反所得的数,正数的反码则与其原码形式相同。例:X1 ,X2的真值为 X1=+1010110X2=1001010 ,反码表示为X =01010110X=101101011反2 反同样,反码表示方式中,0有两种表示方法:+0 =00000000-0 =11111111反反1.2.4 数字化信息编码数字化信息编码是把少量二进制符号(代码),根据一定规则组合起来,以表示大量复杂 多样的信息的一种编码。一般来说,根据描述信息的不同可分为数字编码、字符编码、汉字 编码等。1. 数字编码 数字编码是用二进制数

21、码按照某种规律来描述十进制数的一种编码.最简单最常的是 8421 码,或称BCD码(Binary-CodeDecimal)。它利用四位二进制代码进行编码,这四位二进制 代码,从高位至低位的位权分别为23、22、21、20,即8、4、2、1。并用来表示一位十进制 数。下面列出十进制数符与8421码的对应关系.十进制数 01234567898421码 0000 0001 0010 0011 0100 0101 0110 0111 1000 1001 根据这种对应关系,任何十进制数都可以同8421码进行转换。如(52)=(01010010)(1001 0100 1000 0101)=(9485)10

22、 BCD 102字符编码 在计算机系统中,除了处理数字外,还需要把符号、文字等利用二进制表示,这样的二 进制数称为字符编码.ASCI 1码(American St andard Code of Informa tion Int erchange 是“美国标准信息交 换代码”的缩写。该种编码后来被国际标准化组织 ISO 采纳,作为国际通用的字符信息编 码方案。ASCII码用7位二进制数的不同编码来表示128个不同的字符(因27=128),它包 含十进制数符09、大小写英文字母及专用符号等95种可打印字符,还有33种通用控制 字符(如回车、换行等),共128个。ASCII码表如表15所示,如A的A

23、SCII码为1000001。 ASCII码中,每一个编码转换为十进制数的值被称为该字符的ASCII码值。表 1一5 ASCII 表b7b6b5b b b b43210000010100111001011101110000NULDLESP0P、p0001SOHDC!1AQaq0010STXDC2BRbr0011ETXDC#3CScs0100EOTDC$4DTdt0101ENQNAK%5EUeu0110ACKSYN&6FVfv0111BELETB7GWgw1000BSCAN(8HXhx1001HTEM)9IYiy1010LFSUB*:JZjz1011VTESC+Kk1100FFFS,Ll1101C

24、RGS一=Mm1110SORSMn1111SIUS/?0_oDEL2. 2。 汉字编码:汉字在计算机内也采用二进制的数字化信息编码。由于汉字的数量大,常用的也有几千个之 多,显然汉字编码比ASCII码表要复杂得多,用一个字节(8 bit)是不够的。目前的汉字编 码方案有二字节、三字节甚至四字节的。在一个汉字处理系统中,输入、内部处理、输出对 汉字的要求不同,所用代码也不尽相同.汉字信息处理系统在处理汉字词语时,要进行输入 码、国标码、内码、字型码等一系列的汉字代码转换。国标码1981年我国制定了中华人民共和国国家标准信息交换汉字编码(GB231280标准), 这种编码称为国标码。在国标码字符集

25、中共收录了汉字和图形符号7445个,其中一级汉字 3755个,二级汉字3008个,西文和图形符号682个.国标 GB231280 规定,所有的国标汉字与符号组成一个94 94 的矩阵.在此方阵中, 每一行称为一个区(区号分别为0194)、每个区内有94个位(位号分别为01-94)的汉字字 符集。汉字与符号在方阵中的分布情况如下:115 区为图形符号区:1655区为一级常用二级汉字区 5687区为不常用的二级汉字区 8894区为自定义汉字区。汉字输入码与机内码 计算机处理时,由于汉字具有特殊性,因此汉字输入、存储、处理及输出过程所使用的代码 均不相同。其中包含用于汉字输入的输入码、机内存储和处理

26、的机内码、用于显示及打印的字 模点阵码(字形码)。A输入码(外码) 汉字由各种输入设备以不同方式输入计算机所用到的编码。每一种输入码都与相应的输 入方案有关。根据不同的输入编码方案不同,一般可分类为:数字编码(如区位码)、音码 (如拼音编码)、字形码(如五笔字型编码)及音形混合码等。A机内码 汉字系统中对汉字的存储和处理使用了统一的编码,即汉字机内码(机内码、内码)。机 内码与国标码稍有区别,如果直接用国标码作内码,就会与 ASCII 码冲突。在汉字输入时, 根据输入码通过计算或查找输入码表完成输入码到机内码的转换。如汉字国标码(H) +8080 (H)=汉字机内码(H)。汉字库与汉字字形码.

27、 汉字在显示和打印输出时,是以汉字字形信息表示的,即以点阵的方式形成汉字图形.汉字字 形码是指确定一个汉字字形点阵的代码(汉字字模)。一 般采用点阵表示字形如图15所示是一个16X16点阵 的汉字“中”,用“1”表示黑点、“0”表示白点,则黑 白信息就可以用二进制数来表示 每一个点用一位二进 制数来表示,则一个16X16的汉字字模要用32个字节 来存储。国标码中的 6763 个汉字及符号码要用 261696 字节存储。以这种形式存储所有汉字字形信息的集合称 为汉字字库。可以看出,随着点阵的增大,所需存储容 量也很快变大,其字形质量也越好,但成本也越高。目 前汉字信息处理系统中,屏幕显示一般用16X16点阵, 打印输出时采用 32X 32 点阵,在质量要较高时可以采用 更高的点阵.图1-516 16汉字点阵“中”

展开阅读全文
温馨提示:
1: 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
2: 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
3.本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
5. 装配图网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
关于我们 - 网站声明 - 网站地图 - 资源地图 - 友情链接 - 网站客服 - 联系我们

copyright@ 2023-2025  zhuangpeitu.com 装配图网版权所有   联系电话:18123376007

备案号:ICP2024067431-1 川公网安备51140202000466号


本站为文档C2C交易模式,即用户上传的文档直接被用户下载,本站只是中间服务平台,本站所有文档下载所得的收益归上传人(含作者)所有。装配图网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。若文档所含内容侵犯了您的版权或隐私,请立即通知装配图网,我们立即给予删除!