2-3 定点加减法运算

上传人:t****d 文档编号:243010801 上传时间:2024-09-13 格式:PPT 页数:14 大小:139KB
返回 下载 相关 举报
2-3 定点加减法运算_第1页
第1页 / 共14页
2-3 定点加减法运算_第2页
第2页 / 共14页
2-3 定点加减法运算_第3页
第3页 / 共14页
点击查看更多>>
资源描述
单击此处编辑母版标题样式,单击此处编辑母版文本样式,第二级,第三级,第四级,第五级,*,第二章 机器数及运算方法,机器数表示,定点数:原码、补码、反码和移码,浮点数:IEEE754标准,机器数运算:定点数和浮点数四则运算,1,2 3 定点加减法运算,原码加减法运算,补码加减法运算及溢出的判断,反码加减法运算,2,一、原码加减法运算,1、 第一种算法,其中A0、B0、C0,表示A、B、C三,个数的符号。,A*、B*和C*表示,A、B、C三个数,的绝对值。,即A*、B*、C*的,符号全为正(0)。,溢出,否,是,否,否,是,加,减,B,0,B,0,C,*,=A,*,+B,*,A,0,=B,0,?,C,0,=1?,A,*,B,*,?,C,0,=A,0,C,*,=A,*,B,*,C,0,=A,0,C,0,=B,0,C,*,=B,*,A,*,结束,是,例1:已知:A原=1.01101,B原=0.01011,求:A原+B原,3,、第二种算法,否,是,否,是,否,是,溢出,加,减,B,0, B,0,C,*,=A,*,+B,*,A,0,=B,0,?,C,0,=1?,C,0,=1 ?,C,0,=A,0,C,=A,*,B,*,C,0,=A,0,结束,C,*,= C,的基值补码,C,0,= A,0,例2 :已知 A原=0.01011,B原=1.01101,求:A原+B原,C的基值补,码的含义是,对C的数值,部分求补,4,二、补码加减法运算,1、补码加减法的运算公式,(1)补码加法 公式: A + B ,补,=A,补,+ B,补,(2)补码减法 公式: A - B,补,=,A,补,- B,补,= A,补,+ - B,补, - B补 的求法:,将 B补逐位取反(包括符号位),末位加 1。,2、补码加减法的运算规则,例1:已知 x=0.1010 、 y= - 0.0011, 用补码的加减法,求 x + y补和 x y补,参加运算的数都用补码表示;,数据的符号与数据一样参加运算;,求差时将减数求补,用求和代替求差;,运算结果为补码,如果符号位为0,表明运算结果,为正;符号位为1,则运算结果为负;,符号位的进位为模值,应该丢掉。,练习:已知 x=0.1001 、 y= - 0.1010,用补码的加减法,求 x + y补 、x y补及 x+y 和 x-y 的值,5,(4)补码加减法流程,否,是,溢出,加,减,B+2,-n, B,C=A+B(mod2),结束,A,0,=B,0,且,A,0,C,0,?,B+2,-n, B表示对B的补码逐位取,反,末位加1。即求-B,补,其中A、B为补码表示的定点小数,其中A0、B0、C0为参与运算的,A、B的符号和补码加法后所得和,C的符号。,6,3、补码加减法,溢出判断方法,溢出,是指运算结果超出机器字长所能表示的范围。 两个符号相同的数相加,可能产生溢出;两个符号相异的数相加,不可能产生溢出。,(1)单符号法,V=A,f,B,f,S,f,+,A,f,B,f,S,f,符号( A,f,、B,f,)相同的两个数相运算,,其运算结果的符号S,f,与A,f,或B,f,相反。,例1:已知 x=0.1001 、 y= - 0.1010,用补码的加减法求, x + y补 、x y补并判断其溢出情况。,(2)进位判断法,V= C Cf + C Cf,C为数值最高位向符号位的进位值,Cf为,符号位产生的进位值,两者相异则溢出,例2:已知 x=-0.0101001 、 y= - 0.0101000,求 x + y补,并判断其溢出情况。,(3),双符号法(变形补码法),V= Sf1 Sf2 + Sf1 Sf2,= Sf1 Sf2,用两个相同的符号位表示一个数的符号。当S,f1,S,f2,相异(01、10)则,溢出,其中01表示正向溢出、10表示负向溢出, S,f1,为结果的真正符,号。相同(00、11)不溢出,例3:已知 x=0.1001 、 y= - 0.1010,用变形补码求, x + y补 、x y补并判断其溢出情况。,FA,FA,A0,B0,A0,B0,S,f1,S,f2,V,判断溢出的电路图,7,三、反码加减法运算,1、基本公式,(1)加法 A+B,反,=A,反,+B,反,(2)减法 A-B,反,=A,反,+-B,反,-B反的求法:,是B反连同符号位在内,每位求反 。,循环进位:,反码加减运算时符号位同数值位一起参加运,算,但符号位的进位不能丢失,需加到数值,位的末位。,8,(3)反码加减法流程,否,C,-1,=1 ?,是,A + B C,结束,加,减,C + 2,-n, C,且A,0,=B,0,A,0,C,0,?,溢出,B B,C,-1,表示运算结果,的符号位的进位,循,环,进,位,9,四、实现补码加减法运算的逻辑框图,0 1,A,B,ALUA,1,1,1,0,B ALU,B ALU,ALU+1,A ALU,+,+,10,一、填空,1、补码加减法中( )作为数的一部分参加运算,( )要丢掉。,2、为判断溢出,可采用双符号位补码,此时正数的符号用( )表示, 负数的符号用( )。,3、采用双符号位的方法进行溢出检测是,若运算结果中两个符号位( ),则表明发生了溢出。若结果的符号位为( ),表示发生正溢出;若为( ),表示发生负溢出。,4、采用单符号位进行溢出检测进,若加数与被加数符号相同,而运,算结果的符号与操作数的符号( ),则表示溢出;当加数与,被加数符号不同时,相加运算的结果( )。,5、利用数据编码的最高位和次高位的进位状况来判断溢出,其逻辑表达式V=( )。,6、在减法运算中,正数减( )数可能产生溢出,此时的溢出为,( )溢出;负数减( )可能产生溢出,此时的溢出为( )。,11,二、选择题,、在定点二进制运算器中,减法运算一般通过( )实现。,、原码运算的二进制减法器 、补码运算的二进制减法器,、补码运算的十进制加法器 、补码运算的二进制加法器,、在定点运算器中,无论采用双符号位还是单符号位,必须有( ),它一般用( )来实现。,、译码电路、与非门 、编码电路、或非门,、溢出判断电路、异或门 、移位电路、与或非门,3、在补码加减法规则中,下哪一个说法是正确的,( ),A、所有的操作数都用补码表示,结果也用补码表示,B、若两数同号做加法,异号则做减法,C、符号位和数值位分开处理,D、结果的符号为1,表示溢出,三、简答题,、简述采用双符号位检测溢出的方法,并画出电路图。,、符述采用单符号位检测溢出的方法。,3、什么是定点溢出?给出判断定点溢出的两种方法。,12,一个C语言程序在一台32位机器上运行,程序中定义了三,个变量x、y、z,其中x和y为int型,y为short型。当,x=127 , y=-9时,执行赋值语句z=x+y后,x , y , z的值分,别是多少?,A、x=0000 007FH y=FFF9H Z=0000 0076H,B、x=0000 007FH y=FFF9H Z=FFFF 0076H,C、x=0000 007FH y=FFF7H Z=FFFF 0076H,D、x=0000 007FH y=FFF7H Z=0000 0076H,13,四、计算题,、已知X和Y,用变形码计算XY、XY,同时指出运算结果是否溢出?,()27/32 ,Y=31/32 (2)X=13/16,Y=-11/16,2、已知机器字长n=8,X=- 44,Y=- 53,求X+Y和X-Y,3、已知X补=1.1011000,Y补=1.1011000,用变形补码计算,2X补+1/2Y补,并判断结果有无溢出?,4、已知2X补=1.0101001,1/2Y原=1.0101000,用变形补码计,算X补+Y补,并判断结果有无溢出?,5、已知 1/2X补=1.0101001,2Y原=0.1101100,用变形补码计,算X补+Y补,并判断结果有无溢出?,6、已知X=-7.25,Y=28.5625用变形补码求X-Y=?,7、已知Y=-0.0101,机器数用双符号表示。分别求Y补、1/2Y补,和-Y补。,14,
展开阅读全文
相关资源
正为您匹配相似的精品文档
相关搜索

最新文档


当前位置:首页 > 图纸专区 > 大学资料


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

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


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