




版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
1、第第2章章 数据的表示数据的表示 数据信息是计算机加工处理的对象,可以分为数值数据和非数值数据。本章将讨论数据信息在计算机中的表示。2.1 数制与编码数制与编码2.1.1 进位计数制及其相互转换进位计数制及其相互转换每位数符为每位数符为09,逢十进一。,逢十进一。N10 = (式2.1)每位数符为每位数符为0或或1,逢二进一。,逢二进一。 N2 = (式2.2)110nmiiiA12nmiiiB每位数符为每位数符为07,逢八进一。,逢八进一。N8 = (式2.3)每位数符为每位数符为09,AF,逢十六进一。,逢十六进一。 N16 = (式2.4)18nmiiiC116nmiiiD十进制十进制二
2、进制二进制八进制八进制十六进制十六进制000011112102231133410044510155611066711177810001089100111910101012A11101113B12110014C13110115D14111016E15111117F 按式(按式(2.2)按权展后,再求和。)按权展后,再求和。 例(110101.101)2 =125 124 023 122 021 120 12-1 02-212-3 =(53.625)10 整数部分除整数部分除2取余,余数从后向前排列;取余,余数从后向前排列; 小数部分乘小数部分乘2取整,整数从前向后排列。取整,整数从前向后排列。
3、例(12.6875) 10 =(1100.1011) 2 2 12 ( 0 0.6875 2 6 ( 0 2 2 3 ( 1 1.3750 2 1 ( 1 2 0 0.750 2 1.50 2 1.0 从小数点开始分别向左、向右每三位分为一组,再将每从小数点开始分别向左、向右每三位分为一组,再将每组用对应的八进制数位表示。组用对应的八进制数位表示。 例( 11 101 010 011.101 110 )2 = (3523.56)8 3 5 2 3 5 6 二进制数转换为八进制数时为上述逆运算。二进制数转换为八进制数时为上述逆运算。 从小数点开始分别向左、向右每四位分为一组,再将每组用对应的从小
4、数点开始分别向左、向右每四位分为一组,再将每组用对应的十六进制数位表示。十六进制数位表示。 例(1111 0101 0011.1011 1000)2 =(F53.B8) 16 F 5 3 B 8 二进制数转换为八进制数时为上述逆运算。二进制数转换为八进制数时为上述逆运算。 十进制转换成八进制、十六进制的原理与十进制转换成二进制原理类十进制转换成八进制、十六进制的原理与十进制转换成二进制原理类似,仅需将基数改成似,仅需将基数改成8、16即可。即可。2.1.2 真值和机器数真值和机器数1.原码表示原码表示(符号符号幅值表示幅值表示)原码表示约定:数码序列中的最高位为符号位,符号位为0表示该数为正,
5、为1表示该数为负;其余有效数值部分则用二进制的绝对值表示。【例2-10】若X0.1011, 则X原0.1011; 若X0.1011, 则X原1.1011; 若X1101,则X原0 1101; 若X1101,则X原1 1101。原码表示法的优点是比较直观,缺点是加减运算复杂。2.补码表示补码表示 补码表示约定:正数的补码表示与其原码表示相同;负数的补码表示为符号位为1,其余各位先按位变反,然后末位加1,这条规律可简称为“变反加1”。 例:若X十0.1011,则X补0.1011; 若X一0.1011,则X补1.0101; 若X十1011,则X补0 1011; 若X一1011,则X补1 0101补码
6、表示可以使符号位作为数值的一部分直接参与运算,并且使减法运算转化为加法运算,简化了计算机中运算器的线路设计。 3.反码表示反码表示 反码表示约定:正数的反码表示与其原码表示相同;负数的反码表示为其原码的各位按位变反。 例:若X十0.1101,则X反0.1101; 若X一0.1001,则X反1.0110。 若X十1101,则X反01101。 若X一1101,则X反10010反码也能达到化“减”为“加”的目的。 2.1.3 BCD码 BCD码用4位等值的二进制数表示一个十进制数字,即二进制编码00001001,分别代表十进制数位0-9 。 而编码1010到1111在BCD码中不使用。在BCD码中,
7、n位的十进制数用n组4位二进制数保存。例如,27被存为0010 0111(在二进制中,它被存为0001 1011)。BCD码是一种带符号表示法,有两个部分:1位用于表示符号,而幅值部分保存数的绝对值。例如,+273表示为0(符号)0010 0111 0011;而273表示1(符号)0010 0111 0011。 2.1.4 字符与字符串 1.字符:ASCII码(American Standard Code for Information Interchange)2.字符串:连续存放的字符编码3.汉字的表示:汉字输入码(输入汉字用) 汉字机内码(机内存储和处理汉字用) 汉字字形码(输出汉字用)
8、1981年我国国家标准局公布了GB2312-80,即信息交换用汉字编码字符集基本集,简称国标码。共收集常用汉字6763个,各种图形符号682个,共计7445个。2.1.5 校验码校验码1奇偶校验奇偶校验奇偶校验是一种最简单的校验方法,常用于主存的读写检查。其思想是根据代码字的奇偶性质进行编码与校验,奇校验是使整个校验码(有效信息位和校验值)中“1”的个数为奇数;偶校验是使整个校验码中“1”的个数为偶数。 例:待编有效信息 10110011 则奇校验码(配校验位后) 101100110 偶校验码(配校验位后) 101100111该方法只能发现一个或奇数个错,但不能判断是哪位出错,没有纠错能力,也
9、不能发现偶数个错。2海明校验海明校验 它实际上是一种多重奇偶校验,即将代码按照一定规律分为若干小组,分组进行奇偶校验,各组的检验信息组成一个指误字,不仅能检测是否出错,而且在只有一位出错的情况下可指出是哪一位错,从而将该位自动地变反纠正。例:待编信息4位A1A2A3A4,进行海明校验编码后,要求能发现并纠正一位错。 (1)分成几组?增设多少校验位? 设待编的有效信息k位,分成r组,每组增设一个校验位,共需增设r位校验位,组成一个n位的海明校验码。如果要求海明校验码能发现并纠正一位错,则应满足下述关系: nk十r 2 r一1 若k4,则r3,组成7位海明码。 (2)分组方法 本例中待编有效信息A
10、1A2A3A4,增设校验位P1P2P3,分为三组校验,可产生三位的指误字G3G2G1。为了使指误字指明出错位,本例采取一种最简单的对应关系:让指误字代码与出错位序号相同。七位海明校验码的序号与分组关系如下表所示。 序号含义分组P1P2A1P3A2A3A4第3组第2组第1组指误字正确G3G2G1出错位1 2 3 4 5 6 7000111101100111010101000 1 2 3 4 5 6 7 序号含义分组P1P2A1P3A2A3A4第3组第2组第1组指误字正确G3G2G1出错位1 2 3 4 5 6 7000111101100111010101000 1 2 3 4 5 6 7 序号含
11、义分组P1P2A1P3A2A3A4第3组第2组第1组指误字正确G3G2G1出错位1 2 3 4 5 6 7000111101100111010101000 1 2 3 4 5 6 71 2 3 4 5 6 7(2)分组方法三组的奇偶校验表达式为: 每个校验位只参加一组奇偶校验,有效信息A1A2A3A4分别参加两组以上的校验。(3)编码 假定每组都采取偶校验。现欲向外存写入有效信息(1010),将它们分别填入第3、5、6、7位,即A1A2A3A4 ,再分组进行奇偶统计,按偶校验要求填入校验位:P1P2P3。如果参加第1组偶校验的有:P1A1A2A4,P1应为1才能使该组1的个数为偶数:同理P20
12、,P31。最后得到海明校验码七位:(1011010)。43233AAAPG43122AAAPG42111AAAPG(4)查错与纠错(译码)如果从外存中读得七位海明码为(1011010),按表2-3分组进行奇偶检测,由于三个小组都满足偶校验要求,G3G2G1000,表明收到的编码是正确的。如果从外存中读得的代码是(1011110),同样按表2-3分组进行奇偶检测,得到二组的检错信息,形成指误字G3G2G1 101,表明第5位(即A2)出错。将第5位变反,即可纠正为(1011010)。海明码可以检测出2位错,或检测并纠正1位错,主要用于要求快速自动纠错的场合 。 3CRC校验校验 循环冗余码校验C
13、RC能发现并纠正信息存储或传送过程中连续出现的多位错误,因此在磁表面存储器和多机通信中得到广泛应用。它约定的校验规则是:让校验码能为某一约定代码所除尽;如果除得尽,表明代码正确;如果除不尽,余数将指明出错位所在位置。定义待编信息(被除数)为M(x);约定的除数为G(x),G(x)又称为生成多项式;所产生的余数为R(x),它相当于所配的冗余校验值。 1)编码方法)编码方法将待编码的k位有效信息M(x)左移r位,得M(x)xr。选取一个r十1位的生成多项式G(x),对M(x)xr作模2除 (模2除)将左移r值的待编有效信息,与余数R(x)作模2加(减),即拼接为循环校验码。 M(x)xr十R(x)
14、Q(x)G(x) (模2加) 在按位运算中,模2加与模2减的结果是一致的。M(x)xr的末尾r位是0,所以与余数R(x)的加减实际上就是将M(x)与R(x) 相拼接。拼接成的校验码必定能为约定的G(x)所除尽。)()()()()(xGxRxQxGxxMr例:将4位有效信息(1100)编成循环校验码。 M(x)x3十x2,即1100 (k4) M(x)xrx6十x5,即1100000 (r3) G(x)x3十x十1, 即1011 (r十14) (模2除) M(x)x3十R(x)l100000十0101100010 (模2加) 我们将编好的循环校验码称为(7,4)码。101101011101011
15、1100000)()(3xGxxM1011111010111100000101110101011001000000101110QR1011111010111100000101110101011001000000101110QR1011111010111100000101110101011001000000101110QR2)译码与纠错)译码与纠错 将收到的循环校验码,用约定的生成多项式G(x)去除。如果编码无误,则余数为0;如果某一位出错,则余数不为0。不同位出错则余数不同,余数代码与出错位序号之间有唯一的对应关系。3)生成多项式的选取)生成多项式的选取 并不是任何一个多项式都可以作为生成多项
16、式的,从检错与纠错的要求出发,生成多项式应能满足下列要求:任何一位发生错误都应使余数不为0,不同位发生错误应当使余数不同,应满足余数循环规律。 2.2 定点数的表示定点数的表示2.2.1 无符号数的表示无符号数的表示无符号数也称为非负数码非负数码,表示0或一个正数,相当于小数点位置隐含固定在最低位之后,如图2-3所示。 图2-3 无符号数格式n位非负数码的数值范围为0(所有位都为0)到 1(所有位都为1)。n22.2.2 有符号数的表示有符号数的表示1有符号定点小数表示法有符号定点小数表示法 小数点的位置固定在最高有效数位之前,符号位之后,记作X0.X1X2Xn,这个数是一个纯小数,如图2-4
17、所示。 图2-4 定点小数格式设机器字长有n十1位(注意不是n位),则:原码定点小数表示范因为:(12-n) (12-n)补码定点小数表示范围为:l (12-n)分辨率为: 2-n X0数符小数点位置(隐含)n位数值位X1XnX2X0数符小数点位置(隐含)n位数值位X1XnX2X0数符小数点位置(隐含)n位数值位X1XnX22有符号定点整数表示法有符号定点整数表示法小数点位置隐含固定在最低有效数位之后,记作XnXn-1Xn-3 X0,这个数是一个纯整数,如图2-5所示。 图2-5 定点整数格式原码定点整数的表示范围为:(2n1) (2n1)补码定点整数的表示范围为:2n (2n1)分辨率为:1
18、2.3 浮点数的表示 2.3.1 浮点格式浮点格式一个浮点数包含:符号,小数或有效值(通常也称为尾数)和指数(通常也称为阶码),其形式可写成: NMRE 式中,R为浮点数阶码的底,在各种教科书中常取2。E和M都是带符号的定点数,E叫做阶码,M叫做尾数。在大多数计算机中,尾数为纯小数,常用原码或补码表示;阶码为定点整数,常用移码或补码表示。浮点数的一般格式如图2-6所示。 图2-6 浮点数据格式例如,某计算机的浮点格式为:数符1位、阶码8位(补码)、尾数23位(补码),则浮点数17.5(0.1000125)可以表示为:000000101100010000000000000000002.3.2 规
19、格化浮点数规格化浮点数对于阶码的底为R的规格化浮点数,定义其尾数M的绝对值应在下列范围内:如果R2,则有 。当尾数用原码表示时,规格化尾数的最高数位总等于1。当尾数用补码表示时,判断规格化尾数的方法是尾数的最高数位与符号位相反,即 。 0、正无穷大和负无穷大不能被规格化,需要用一个特殊值来表示。11 MR121 M11mmf2.3.3 移码(增码)表示法移码(增码)表示法浮点数可用移码表示阶码,定义如下: 设定点整数移码序列为X0XlX2Xm,则 X 移2m十X 2mX2m (2.10) 式中X是阶码的真值,2m是符号位的位权,这相当于将真值X沿数轴正向平移量2m,所以取名为移码,如图2-7所
20、示。或者说将X增加一个量2m ,又被称为增码。图2-7 移码在数轴上的表示移码的一些性质:X移相当于把真值映射到02n正数域。若将移码视作无符号数,则移码的大小就反映了真值的大小,这将便于两个浮点数的阶码大小比较。最高位为符号位,表示形式与原码和补码相反,1表示正,0表示负。移码与补码的关系:除符号位相反外,其余各位相同。移码表示中,0有唯一的编码,即:十0移一0移1000。 X 移为全0时,表明阶码最小(即绝对值最大负数),为一2n 。2.3.4 浮点数据特性浮点数据特性1精度精度 顾名思义,精度精度表示浮点数的精确性,它被定义为尾数的位数。尾数的位数越多,CPU的精度越高,它表示的数据越精确。许多计算机中有两种浮点数格式:单精度浮点数和双精度浮点数。2间距间距 间距间距为两个相邻值的差的绝对值,它的大小由阶值的大小决定。例如,对于一个有8位尾数的浮点数:0.1011101023,它的2个相邻值为:0.10111011 23和0.1011100123,间距为:0.0000 000123 = 2-5。实际上浮点数X的间距可以表示为2(XE precision)。3范围范围 范围范围由浮点数格式所能表示的最大值和最小值决定,它与R、M和E的位数以及采用的机器数表示形式有关。最大正数A非0最小正数a绝对值最大负数B绝对
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 通风系统卫生管理办法
- 造林补贴资金管理办法
- 道具家禽养殖管理办法
- 道路拖车保障管理办法
- 邀约试乘试驾管理办法
- 部门物资采购管理办法
- 都安项目劳务管理办法
- 烘焙宣传活动方案
- 烘焙气你活动方案
- 烟台社区文化节活动方案
- 【课件】第五单元化学反应的定量关系新版教材单元分析九年级化学人教版(2024)上册
- 十堰房县国有企业招聘笔试题库2024
- 沪教版小学六年级语文上学期考前练习试卷-含答案
- 04S519小型排水构筑物(含隔油池)图集
- 外研版(2024)七年级上册英语全册教案教学设计
- 研讨报告的格式范文模板
- 山东省青岛市2023-2024学年五年级下学期6月期末科学试题
- GB/T 44130.1-2024电动汽车充换电服务信息交换第1部分:总则
- 中考重庆作文满分范文英语
- 伤口造口进修汇报护理
- GB/T 43635-2024法庭科学DNA实验室检验规范
评论
0/150
提交评论