定点乘法运算.ppt

上传人:s****8 文档编号:67283920 上传时间:2022-12-24 格式:PPT 页数:8 大小:82.50KB
返回 下载 相关 举报
定点乘法运算.ppt_第1页
第1页 / 共8页
定点乘法运算.ppt_第2页
第2页 / 共8页
点击查看更多>>
资源描述

《定点乘法运算.ppt》由会员分享,可在线阅读,更多相关《定点乘法运算.ppt(8页珍藏版)》请在得力文库 - 分享文档赚钱的网站上搜索。

1、2.3 定点乘法运算定点乘法运算2.3.1 原码乘法原码乘法 在定点计算机中在定点计算机中,两个原码表示的数相乘的运算规则是两个原码表示的数相乘的运算规则是:乘积乘积的符号位由两数的符号位按异或运算得到的符号位由两数的符号位按异或运算得到,而乘积的数值部分则而乘积的数值部分则是两个正数相乘之积。是两个正数相乘之积。设设n位被乘数和乘数用定点小数表示位被乘数和乘数用定点小数表示(定点整数也同样适用定点整数也同样适用)被乘数被乘数 原原f.n110乘数乘数 原原f.n110则乘积则乘积式中式中,f为被乘数符号为被乘数符号,f为乘数符号。为乘数符号。原(ff)(0.n110)(0.n110)(2.2

2、6)乘积符号的运算法则是:乘积符号的运算法则是:同号相乘为正同号相乘为正,异号相乘为负异号相乘为负。由于被乘。由于被乘数和乘数和符号组合只有四种情况数和乘数和符号组合只有四种情况(ff00,01,10,11),因此因此积的符号可按积的符号可按“异或异或”(按位加按位加)运算得到。运算得到。数值部分的运算方法与普通的十进制小数乘法类似数值部分的运算方法与普通的十进制小数乘法类似,不过对于不过对于用二进制表达式的数来说用二进制表达式的数来说,其乘法规则更为简单一些。其乘法规则更为简单一些。设设0.1101,0.1011.让我们先用习惯方法求其乘积让我们先用习惯方法求其乘积,其其过程如下过程如下:运

3、算的过程与十进制乘法相似运算的过程与十进制乘法相似:从乘数从乘数的最低位开始的最低位开始,若这一位为若这一位为“1”,则将被乘数则将被乘数写下;若这一位为写下;若这一位为“0”,则写下全则写下全0。然后在。然后在对乘数的最高为进行乘法运算对乘数的最高为进行乘法运算,其规则同上其规则同上,不过这一位乘数的权不过这一位乘数的权与最低位乘数的权不一样与最低位乘数的权不一样,因此被乘数因此被乘数要左移一位。以此类推要左移一位。以此类推,直直到乘数个位乘完为止到乘数个位乘完为止,最后将它们统统加起来最后将它们统统加起来,变得到最后乘积变得到最后乘积。如果被乘数和乘数用定点整数表示如果被乘数和乘数用定点整

4、数表示,我们也会得到同样的结果。我们也会得到同样的结果。人们习惯的算法对机器并不完全适用。原因之一人们习惯的算法对机器并不完全适用。原因之一,机器通常只有机器通常只有n位长位长,两个两个n位数相乘位数相乘,乘积可能为乘积可能为2n位。用这种被乘数左移的位。用这种被乘数左移的方法,则需要方法,则需要2n位长的加法器,不仅不适于定点机的形式,而位长的加法器,不仅不适于定点机的形式,而且还必须设法将且还必须设法将n个位积一次相加起来,为了简化结构,机器通个位积一次相加起来,为了简化结构,机器通常只有常只有n位长,并且只有两个操作数相加的加法器位长,并且只有两个操作数相加的加法器.为此,必须为此,必须

5、修改上述乘法的实现方法,将修改上述乘法的实现方法,将xy改写成适于如下定点机的形式改写成适于如下定点机的形式:0.1 1 0 1 x 0.1 0 1 1 y 0.0 0 0 0 1 1 0 1 x共右移共右移4次次 0.0 0 0 1 1 0 1 x共右移共右移3次次 0.0 0 0 0 0 0 x共右移共右移2次次 +0.0 1 1 0 1 x共右移共右移1次次 0.1 0 0 0 1 1 1 1 (z)为了适合于两个操作数相加的加法器为了适合于两个操作数相加的加法器,将将xy进一步改写成如下进一步改写成如下形式:形式:xy=x(0.1011)=0.1x+0.00 x+0.001x+0.00

6、01x =0.1x+0.10+0.1(x+0.1x)=2-1x+2-10+2-1(x+2-1x)根据此式,按照式中括号所表达的层次从内向外逐根据此式,按照式中括号所表达的层次从内向外逐次进行移位累加次进行移位累加.每算完一层括号每算完一层括号2-1(部分积),就得到一个(部分积),就得到一个新的部分积,最后的一个部分积即为乘积新的部分积,最后的一个部分积即为乘积.一般而言,设被乘数一般而言,设被乘数x,乘数乘数y都是小于都是小于1的的n位定点正数位定点正数:x=0.x1x2xn y=0.y1y2yn其乘积为其乘积为 xy=x(0.y1y2yn)=x(y12-1+y22-2+yn2-n)=2-1

7、(y1x+2-1(y2x+2-1(+2-1(yn-1x+2-1(ynx+0)令令Zi表示第表示第i次部分积,则上式可写成如下递推公式次部分积,则上式可写成如下递推公式:z0=0 z1=2-1(ynx+z0)z2=2-1(yn-1x+z1):zi=2-1(yn-i+1x+zi-1)(2.28):zn=xy=2-1(y1x+zn-1)显然,欲求显然,欲求xy,则需设置一个保存部分积的累加器乘,则需设置一个保存部分积的累加器乘法开始时,令部分积的初值法开始时,令部分积的初值z00,然后求,然后求ynx加上加上z0,右,右移移1位得第位得第1个部分积个部分积z1又将又将yn-1加上加上z1,再右移,再

8、右移1位得第位得第2个部分积个部分积z2.依此类推,直到求得依此类推,直到求得y1x加上加上zn-1并右移并右移1位位得最后部分积得最后部分积zn,即得乘积,即得乘积xy一一zn。显然,两个。显然,两个n位数相位数相乘,需重复进行乘,需重复进行n次次“加加”及及“有移有移”操作,操作,才能得到才能得到最后乘积这就是实现原码一位乘法的规则最后乘积这就是实现原码一位乘法的规则例例1 x01101,y=01011,求求 x y解:解:部分积部分积 乘数乘数 说明说明 0 0.0 0 0 0 yf 1 0 1 1 z0=0+0 0.1 1 0 1 y4=1,+x 0 0.1 1 0 1 0 0.0 1

9、 1 0 1 yf 1 0 1 右移,得右移,得z1+0 0.1 1 0 1 y3=1,+x 0 1.0 0 1 1 0 0.1 0 0 1 1 1 yf 1 0 右移,得右移,得z2+0 0.0 0 0 0 y2=0,+0 0 0.1 0 0 1 0 0.0 1 0 0 1 1 1 yf 1 右移,得右移,得z3+0 0.1 1 0 1 y1=1,+0 0 1.0 0 0 10 0.1 0 0 0 1 1 1 1 yf 右移,得右移,得z4=x y 所以所以 x y=0.10001111 实现原码一位乘法的硬件逻辑原理示于图实现原码一位乘法的硬件逻辑原理示于图2.5这里这里需要三个寄存器,其

10、中需要三个寄存器,其中R0存放部分积存放部分积z(乘法开始前乘法开始前R0应应清清“0”,因为,因为z0=0),),R2存放被乘数存放被乘数x,Rl存放乘数存放乘数y由于乘法开始时先从乘数的最低位由于乘法开始时先从乘数的最低位yn开始,以后则使用开始,以后则使用yn-1,yn-2,yl,因此乘数寄存器因此乘数寄存器R1应当是具有右移功应当是具有右移功能的移位寄存器能的移位寄存器.假定加法器不具备右移功能,那么由于假定加法器不具备右移功能,那么由于部分积需要右移,部分积需要右移,R0也应当是具有右移功能的移位寄存也应当是具有右移功能的移位寄存器器 除了三个寄存器除了三个寄存器R0,R1,R2外,

11、还需一个加法器和外,还需一个加法器和一个计数器,前者完成部分积与位积的累加,后者对移一个计数器,前者完成部分积与位积的累加,后者对移位的次数进行计数,以便判断乘法运算是否结束位的次数进行计数,以便判断乘法运算是否结束 乘法开始时乘法开始时“启动启动”信号使控制触发器信号使控制触发器Cx置置“1”,于是,于是开启时序脉冲开启时序脉冲T.当乘数寄存器当乘数寄存器R1最末位为最末位为”1”时,部分积时,部分积Z和被乘数和被乘数x在加法器中相加,其结果输出至在加法器中相加,其结果输出至R0的输入端的输入端.一旦打入控制脉冲一旦打入控制脉冲T到来,控制信号到来,控制信号LDR0使部分积右移使部分积右移1

12、位,与此同时,乘数寄存器位,与此同时,乘数寄存器Ri也在控制信号也在控制信号LDR1作用下作用下右移一位,且计数器右移一位,且计数器i计数计数1次次.当计数器当计数器i=n时,计数器时,计数器i的的溢出信号使控制触发器溢出信号使控制触发器Cn置置“0”,关闭时序脉冲,关闭时序脉冲T,乘,乘法宣告结束法宣告结束.如果将如果将R0和和R1连接起来连接起来,乘法结束时乘积的高乘法结束时乘积的高n位部分在位部分在R0,低,低n位部分在位部分在R1,R1中原来的乘数中原来的乘数y由于由于右移而全部移出丢失右移而全部移出丢失.所得乘积为所得乘积为2n1位(其中包括位(其中包括1位位符号位)符号位).乘法操作的总时间为乘法操作的总时间为 tm=n(ta+tr)(2.29)其中其中ta为加法器执行一次加法操作的时间,为加法器执行一次加法操作的时间,tr为执行一次为执行一次移位操作的时间,移位操作的时间,n为尾数位数为尾数位数.如果加法操作和移位操作如果加法操作和移位操作同时进行,则同时进行,则tr项可省去项可省去.

展开阅读全文
相关资源
相关搜索

当前位置:首页 > 生活休闲 > 生活常识

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

工信部备案号:黑ICP备15003705号-8 |  经营许可证:黑B2-20190332号 |   黑公网安备:91230400333293403D

© 2020-2023 www.deliwenku.com 得利文库. All Rights Reserved 黑龙江转换宝科技有限公司 

黑龙江省互联网违法和不良信息举报
举报电话:0468-3380021 邮箱:hgswwxb@163.com