基本信息
文件名称:计算机的算术运算.ppt
文件大小:4.96 MB
总页数:40 页
更新时间:2025-06-29
总字数:约6.63千字
文档摘要

舍入处理在对阶或向右规格化时,尾数要向右移位,被右移的尾数的低位部分会被丢掉,造成一定误差,要进行舍入处理。简单的舍入方法有两种:“0舍1入”法:右移时被丢掉数位的最高位为0则舍去,反之则将尾数的末位加“1”。“恒置1”法:只要数位被移掉,就在尾数的末位恒置“1”。从概率上来说,丢掉的0和1各为1/2。第30页,共40页,星期日,2025年,2月5日溢出处理浮点数的溢出表现为阶码溢出;阶码上溢超过了阶码可能表示的最大值的正指数值,一般将其认为是+∞和-∞。阶码下溢超过了阶码可能表示的最小值的负指数值,一般将其认为是0。对尾数的溢出也需要处理尾数上溢两个同符号尾数相加产生了最高位向上的进位,将尾数右移,阶码增1来重新对齐。尾数下溢在将尾数右移时,尾数的最低有效位从尾数域右端流出,要进行舍入处理第31页,共40页,星期日,2025年,2月5日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)结果规格化及舍入处理第32页,共40页,星期日,2025年,2月5日浮点运算流水线流水线原理把输入的任务分割为一系列子任务,使各子任务能在流水线的各个阶段并发地执行;将任务连续不断地输入流水线,从而实现了子任务的并行。在流水线中,原则上要求各个阶段的处理时间都相同。对子任务的划分,是决定流水线性能的一个关键因素。假定作业T被分成k个子任务,可表达为T={T1,T2,···,Tk}各个子任务之间有一定的优先关系:若ij,则必须在Ti完成以后,Tj才能开始工作。线性流水线第33页,共40页,星期日,2025年,2月5日过程段处理一个子任务的过程称为过程段(Si)。线性流水线由一系列串联的过程段组成,各个过程之间设有高速的缓冲寄存器(L),数据从一个过程段流向相邻的过程段。线性流水线处理的硬件基本结构第34页,共40页,星期日,2025年,2月5日流水线的工作设过程段?Si所需的时间为τi,缓冲寄存器的延时为τl,线性流水线的时钟周期定义为τ=max{τi}+τl=τm+τl流水线处理的频率为?f=1/τ一个具有k?级过程段的流水线处理?n?个任务需要的时钟周期数为Tk=k+(n-1),所需要的时间为:?T=Tk?×?τ而同时,顺序完成的时间为:T=n×k×τ加速比?第35页,共40页,星期日,2025年,2月5日加法流水线的例子第36页,共40页,星期日,2025年,2月5日3.5.4MIPS中的浮点指令单精度、双精度浮点寄存器第37页,共40页,星期日,2025年,2月5日3.5算术精确性计算机算术总是有有限精度的;C语言中如何比较浮点数的大小?第38页,共40页,星期日,2025年,2月5日3.6并行性和计算机算术:结合律(阅读)p165第39页,共40页,星期日,2025年,2月5日计算机的算术运算第1页,共40页,星期日,2025年,2月5日提纲3.1引言3.2加法和减法3.3乘法3.4除法3.5浮点运算3.6并行性和计算机算术:结合律3.7实例:X86的浮点3.8谬误与陷阱3.9本章小结3.10拓展阅读第2页,共40页,星期日,2025年,2月5日3.1引言如何表示小数?遇到无法表示的大数怎么办?如何运算?第3页,共40页,星期日,2025年,2月5日3.2加法和减法运算方法?减法转换为补码的加法;溢出的概念:运算结果超出了数的表示范围MIPS检测到溢出时会产生异常,也叫中断异常程序计数器EPC:保存导致异常的指令第4页,共40页,星期日,2025年,2月5日一位全加器加法运算:Ai+Bi+Ci=Si(Ci+1) 加数 进位输入和进位输出一位全加器真值表输入输出AiBiCiSiCi+10000000110010100110110010101011100111111逻辑方程Si=Ai⊕Bi⊕CiCi+1=AiBi+BiCi+CiAi?第5页,共40页,星期日,2025年,2月5日全加器逻辑电路Si=Ai⊕Bi⊕C