欢迎来到天天文库
浏览记录
ID:59415667
大小:900.50 KB
页数:72页
时间:2020-09-19
《ppt_3A 二进制运算方法和ALUppt课件.ppt》由会员上传分享,免费在线阅读,更多相关内容在教育资源-天天文库。
1、计算机原理与汇编上海海事大学信息工程学院13.2ALU和运算方法定点数加减运算定点数乘除运算浮点数运算十进制数加减运算ALU21、定点加减运算(1)补码加法:[X+Y]补=[X]补+[Y]补证明:(略)(ModM)X>0,Y>09+2=?01001+)0001001011X>0,Y<09+(-2)=?01001+)11110100111X<0,Y>0(-9)+2=?10111+)0001011001X<0,Y<0(-9)+(-2)=?10111+)111101101013.2.2定点数运算方法P873(2)补码减法:(ModM
2、)[X-Y]补=[X+(-Y)]补=[X]补+[(-Y)]补9+(-2)=?01001+)11110100111[2]补=00010[-2]补=11110[-2]补=11110[2]补=00010e.g.9-2=9+(-2)[-Y]补称为[Y]补的机器负数3.2.2定点数运算方法P874[Y]补=0.10101[-Y]补=1.01011[Y]补=1.0110[-Y]补=0.1010已知[Y]补求[-Y]补的方法:将[Y]补的每一位(包括符号位)变反最低位加1注意:已知[Y]原码,求[Y]补码与[Y]补码,求[-Y]补码的区别3
3、.2.2定点数运算方法P875补码运算规则:参加运算的操作数用补码表示,符号位也参加运算,所得结果也是补码表示若运算符为+,两操作数直接运算若为-,则减数“变补”后与被减数相加3.2.2定点数运算方法P876例如:[X]补=00110110[Y]补=11001101求[X+Y]补,[X-Y]补解:[Y]补=11001101[-Y]补=00110011[X+Y]补=[X]补+[Y]补00110110+)1100110110000001100110110+)0011001101101001[X+Y]补=00000011,[X-Y
4、]补=011010013.2.2定点数运算方法P877(3)溢出及其判别方法异号数+可能溢出-不会溢出同号数+不会溢出-可能溢出1、采用单符号位的判断方法设Xs,Ys,Ss分别是X,Y,结果S的符号位正+正=负溢出(正溢)负+负=正溢出(负溢)溢出=XsYsSs+XsYsSs3.2.2定点数运算方法P8782、采用进位的判断方法63+66=129(正溢)(-63)+(-66)=-129(负溢)00111111+)0100001010000001C1=1Cs=0∴溢出11000001+)10111110101111111C1=0
5、Cs=1溢出=3.2.2加减法的溢出处理P6993、采用变形补码(双符号位)的判断方法63+66=129(正溢)(-63)+(-66)=-129(负溢)000111111+)001000010010000001111000001+)110111110101111111一致:00正11负不一致:01正溢10负溢3.2.2加减法的溢出处理P6910图例实现加减运算的逻辑示例3.2.2定点数运算方法P8711作业:采用变形补码(双符号位)求下列题目1.X=-0.11011,Y=-0.10011求X+Y2.X=0.11011,Y=-0
6、.11111求X-Y3.X=0.10111,Y=0.11011求X-Y3.2.2加减法的溢出处理P692.移位P90移位操作按移位性质可分为3种类型:逻辑移位、循环移位、算术移位12移位分为逻辑移位、循环移位、算术移位三种逻辑移位:适用于无数值大小的二进制代码只是位置变化,空出位补001001011左移1位1001011010110101右移1位010110103.2.2定点数运算方法P9013循环移位:最高位左移入最低位最低位右移入最高位形成闭合环路不带进位左移:C不带进位右移:带进位左移:带进位右移:CCC14算术移位
7、:带符号数的移位,移位后数的符号不变而数值发生变化。左移:最低位补0,相当于原数×2右移:复制最高位(符号位),相当于原数/2原码:a)左移:符号位不动,其他各位依次左移,末尾补0b)右移:符号位不动,其他各位依次右移,最高有效位补0010011101101←000110→10011015补码:a)左移:各位依次左移,末尾补0(若左移后符号位变化,则发生溢出)b)右移:复制符号位,各位依次右移(不会溢出)010011101101←100110→11011016移位示意图173.2.2定点数乘除运算1)定点数一位乘法运算一、原
8、码一位乘法符号位单独处理Ps=乘积P=
9、X
10、×
11、Y
12、与十进制手算比较(P91)18通用公式:设被乘数x=0.x1x2…xn乘数y=0.y1y2…ynx*y=x(0.y1y2…yn)将y按权展开=x(y1.2-1+y2.2-2+…+yn.2-n)=2-1(y1x+2-1(y2x
此文档下载收益归作者所有