第二章节数据机器表示.ppt

  1. 1、本文档共42页,可阅读全部内容。
  2. 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
  3. 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  4. 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
* 现以8位原码为例,说明带符号定点小数的绝对值最大负数-(1-2-7)、最大正数(1-2-7)。 由此得到:(注意:序列下标和权值的指数一致) 原码定点小数表示范围:-(1-2-n)~(1-2-n) 补码定点小数范围:-1 ~(1-2-n) 原码、补码定点小数分辨率:2-n * 4、浮点数的表示方法 把一个数的有效数字和数的范围在计算机的一个存储单元中分别予以表示,相当于小数点的位置随数的比例因子不同在一定范围内自由浮动,所以把这种表示方式称为浮点表示法。 任意一个二进制数可以写成: N=2e×M M称为浮点数的尾数,纯小数表示,基数为2; e为浮点数的指数,也叫阶码,整数表示,底数为2。 浮点数在机器中由阶码和尾数来表示。尾数部分给出浮点数有效数字,决定浮点数的精度;阶码指明小数点在数据中的位置,决定浮点数的范围。 2定值,不存储 * (1)浮点数的格式 浮点数的表示格式 数符决定浮点数的正负,阶符只决定阶码本身的正负。 Es E1E2…Em Ms M1M2…Mn 阶符 阶码 数符 尾数 整数 小数 * 浮点数举例(原码为例) 0 0 1 0 1 1 1 0 0 0 0 0 E=+2 M=-0.75 N=2E·M=-0.75×22=-0.75×4=-3.0 阶码通常使用移码表示,移码是计算机中又一种机器数的编码方式。下面先介绍移码。 Es E1E2…Em Ms M1M2…Mn 阶符 阶码 数符 尾数 * (2)移码表示法 移码通常用来表示浮点数的阶码,由真值加一个固定的常数生成,这个固定的常数称为偏移量。 设定点整数移码的形式为xm-1…x2x1 x0,则移码定义为: [x]移=2m-1+x -2m-1≤x<2m-1 [x]移是机器数,x是真值,2m-1是一个固定的偏移量,它也是xm-1的位权,移码共有m位。 例、某浮点数阶码8位,含一位符号位,移码表示。当阶码x = -0111 1111,则: [x]移 = 27 - 0111 1111 = 0000 0001 * 移码的特点 最高位为0表示负数,为1表示正数。 移码全0时真值最小,全1时真值最大。 0的移码只有一个,[±0]移=100…0 同一数值的移码和补码,数位相同,而符号相反。 便于阶码大小的比较,便于对阶操作,便于简化机器中判零电路的实现。 * (3)浮点数的规格化表示 为了提高浮点数的表示精度,当尾数不为0时,尾数域的最高数位必须是一个有效值。如果最高数位不是有效值,则通过尾数移位并修改阶码的办法,使其变成有效值,这称为浮点数的规格化。 对规格化的浮点数规定如下: 如果尾数是原码表示,尾数的最高有效位一定为1。 如,0.1101×2-2 为规格化的浮点数表示, 0.01101×2-1则不是。 如果尾数用补码表示,尾数的最高有效位一定与符号位相反。如:0.1x…x和1.0xx…x是规格化的补码表示。 -1/2是个特殊的浮点数,无规格化表示,所以不在浮点数规格化表示的范围内。 * (4)浮点数的表示范围和精度 设浮点数的阶码m+1位,含一位阶符,补码表示,以2为底;尾数n+1位,含一位数符,补码表示,规格化。其典型值如下: 典型值 浮点数代码 真值 绝对值最大负数 01…1,1.00…0 -1×22m-1 绝对值最小负数 10…0,1.01…1 -(2-1+2-n) ×2-2m 非零最小正数 10…0,0.10…0 2-1×2-2m 最大正数 01…1,0.1…1 (1-2-n) ×22m-1 浮点数的表示范围:-1×22m-1~(1-2-n) ×22m-1 浮点数的分辨率:2-1×2-2m(非零最小正数就是分辨率) * (5)真值与浮点数之间的转换 例1、某浮点数字长32位;阶码8位,含一位阶符,补码表示,以2为底;尾数24位,含一位数符,补码表示,规格化。若浮点数代码为(A3680000)16,求其真值。 解:(A3680000)16 = 0…0)2 E = -(1011101)2 = -(93)10 M = (0.11010…0)2 = (0.8125)10 N = 2-93×0.8125 * 真值与浮点数之间的转换 例2、按上题格式将-(1011.11010…0)2写成浮点数代码。 解: N = -(1011.11010…0)2 = -(0.101111010…0)2×24 E = (4)1

文档评论(0)

beautyeve + 关注
实名认证
内容提供者

该用户很懒,什么也没介绍

1亿VIP精品文档

相关文档