第三章 计算机的算术运算.pptVIP

  1. 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
  2. 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  3. 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
  4. 4、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
  5. 5、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们
  6. 6、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
  7. 7、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
第三章 计算机的算术运算

* 3.5.2 浮点加法 设有两个浮点数x和y, 它们分别为: x=2Ex · Mx y=2Ey · My Ex 和 Ey 分别为阶码,Mx 和 My为尾数。 两浮点数进行加法和减法的运算规则是: x±y=(Mx2Ex-Ey±My)2Ey Ex = Ey 完成浮点加减运算的操作过程大体分为: (1) 比较阶码大小并完成对阶; (2) 尾数进行加或减运算; (3) 结果规格化 (4)溢出处理 (5) 舍入处理。 对阶 使二数阶码相同(小数点位置对齐),叫对阶。 先求两数阶码 Ex 和 Ey之差,即△E = Ex-Ey 若△E = 0,表示 Ex=Ey 若△E 0, ExEy 若△E 0, ExEy 通过尾数的移动来改变Ex或Ey,使其相等. 对阶原则 阶码小的数向阶码大的数对齐; 小阶的尾数右移,每右移一位,其阶码加1。 结果规格化 尾数求和方法与定点加减法运算完全一样; 将求和的结果规格化. 规格化的定义: 采用原码: 正数: S=0.1 ×××…× 负数: S=1.1 ×××…× 采用双符号位的补码: 对正数: S=00.1×××…× 对负数: S=11.0×××…× 舍入处理 在对阶或向右规格化时, 尾数要向右移位, 被右移的尾数的低位部分会被丢掉, 造成一定误差, 要进行舍入处理。 简单的舍入方法有两种: “0舍1入”法:右移时被丢掉数位的最高位为0则舍去,反之则将尾数的末位加“1”。 “恒置1”法:只要数位被移掉,就在尾数的末位恒置“1”。从概率上来说,丢掉的0和1各为1/2。 溢出处理 浮点数的溢出表现为阶码溢出; 阶码上溢 超过了阶码可能表示的最大值的正指数值,一般将其认为是+∞和-∞。 阶码下溢 超过了阶码可能表示的最小值的负指数值,一般将其认为是0。 对尾数的溢出也需要处理 尾数上溢 两个同符号尾数相加产生了最高位向上的进位,将尾数右移,阶码增1来重新对齐。 尾数下溢 在将尾数右移时,尾数的最低有效位从尾数域右端流出,要进行舍入处理 3.5.3 浮点乘/除法 设有两个浮点数x和y:x=2Ex·Mx,y=2Ey·My 浮点乘法运算的规则是: x ? y = 2(Ex+ Ey) · (Mx? My) 浮点除法运算的规则是: x÷y=2(Ex-Ey) · (Mx÷My) 浮点乘、除法运算步骤: (1) 0 操作数检查; (2) 阶码加/减操作; (3) 尾数乘/除操作; (4) 结果规格化及舍入处理 浮点运算流水线 流水线原理 把输入的任务分割为一系列子任务,使各子任务能在流水线的各个阶段并发地执行;将任务连续不断地输入流水线, 从而实现了子任务的并行。 在流水线中, 原则上要求各个阶段的处理时间都相同。 对子任务的划分, 是决定流水线性能的一个关键因素。 假定作业 T 被分成 k 个子任务, 可表达为 T={T1,T2,···,Tk} 各个子任务之间有一定的优先关系: 若ij, 则必须在 Ti 完成以后,Tj才能开始工作。线性流水线 过程段 处理一个子任务的过程称为过程段(Si)。 线性流水线由一系列串联的过程段组成,各个过程之间设有高速的缓冲寄存器(L),数据从一个过程段流向相邻的过程段。 线性流水线处理的硬件基本结构 流水线的工作 设过程段?Si所需的时间为τi,缓冲寄存器的延时为τl,线性流水线的时钟周期定义为 τ=max{τi}+τl=τm+τl 流水线处理的频率为?f=1/τ 一个具有k?级过程段的流水线处理?n?个任务需要的时钟周期数为Tk=k+(n-1),所需要的时间为:?T=Tk?×?τ 而同时,顺序完成的时间为:T=n×k×τ 加速比? 加法流水线的例子 3.5.4 MIPS中的浮点指令 单精度、双精度 浮点寄存器 3.5 算术精确性 计算机算术总是有有限精度的; C语言中如何比较浮点数的大小? 3.6 并行性和计算机算术:结合律(阅读) p165 3.7 实例:X86的浮点(略) 3.8 谬误与陷阱 右移可以代替与2的幂次方相除; 只有理论数学家才会关心浮点精度 阅读:P168 3.9 本章小结 并行性的趋势使得浮点的不精确和有限的表达带来了新的挑战; 当今计算机通常采用二进制整数补码运算和IEEE754浮点算术 3.10 拓展阅读(略) * * * * * * * * * * * * * * * 第三章 计算机的算术运算 提纲 3.1 引言 3.2 加法和减法 3.3 乘法 3.4 除法 3.5 浮点运算 3.6 并行性和计算机算术:结合律 3.7 实例:X86的浮点 3.8 谬误与陷阱 3.9 本章小结 3.10

文档评论(0)

dajuhyy + 关注
实名认证
文档贡献者

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

1亿VIP精品文档

相关文档