2.2.2-6-2 补码位乘法(Booth算法)「建议收藏」

2.2.2-6-2 补码位乘法(Booth算法)「建议收藏」sei哈加油⛽️(*≧▽≦)因为我们学了原码的乘法运算,这一小节我们来看补码的乘法运算怎么实现,我们需要掌握的是补码的一位乘。怎么实现?我们需要掌握的是补码的一位乘法,那由于补码的计算方法和源码的计算方法非常类似,所以我们会和上一小节的内容进行对比,学习和记忆,那在源码的一位乘法当中,我们说过我们需要进行N轮的加法,还有移位操作,可以得到最终的结果,那补码的一位乘法,我们同样需要进行N轮的加法和移位,但是最后会比元码的一位乘法再多来一次加法多一次加法好,第2点源码每一轮的加法,我们有可能…

大家好,欢迎来到IT知识分享网。

2.2.2-6-2 补码位乘法(Booth算法)「建议收藏」2.2.2-6-2 补码位乘法(Booth算法)「建议收藏」2.2.2-6-2 补码位乘法(Booth算法)「建议收藏」2.2.2-6-2 补码位乘法(Booth算法)「建议收藏」

2.2.2-6-2 补码位乘法(Booth算法)「建议收藏」

 

sei哈加油⛽️ (*≧▽≦)

因为我们学了原码的乘法运算,这一小节我们来看补码的乘法运算怎么实现,我们需要掌握的是补码的一位乘。怎么实现?我们需要掌握的是补码的一位乘法,那由于补码的计算方法和源码的计算方法非常类似,所以我们会和上一小节的内容进行对比,学习和记忆,那在源码的一位乘法当中,我们说过我们需要进行N轮的加法,还有移位操作,可以得到最终的结果,那补码的一位乘法,我们同样需要进行N轮的加法和移位,但是最后会比元码的一位乘法再多来一次加法多一次加法好,第2点源码每一轮的加法,我们有可能会加这样的两种值,要么就是加全零,要么就是加X的绝对值的一个源码,那具体加什么我们是根据MQ神商寄存器的最低位来确定的,当最低位为1的时候,就是加上X的绝对值的源码,当最低位为0的时候就是加上0马上凌浩在看补码的乘法补码,每一次有可能加的值,有这样的三种情况,要么嘉陵要么加上X的补码,要么加上负X的补码,那具体要加什么,我们需要根据Mt zero当中的最低位,还有一个所谓的辅助位来确定那辅助位是什么,我们一会再来解释,那规则是这样的,不管是辅助位还是MQ的这个最低位,肯定要么就是0,要么就是一所以辅助位减MQ最低位有可能得到的值,只会有这样的三种情况,唯一为0或者为-1,那么当辅助为减低位=1的时候,我们需要用ACC加上X的补码,如果相减为0,那么我们需要让ACC加上灵儿,如果相减得-1,那么我们需要让ACC加上复读吗?其实还是很直观很好记的啊,都有这种一一对应的关系,好那这。这种一对应的关系好,那这是第2个区别,接下来对原码的乘法来说,我们每一次做完加法之后都需要进行逻辑右移,逻辑右移就意味着高位,一定是天零,唉,对。每一次做完加法之后都需要进行逻辑右移逻辑右移就意味着高位,一定是天0,而对于补码来说,每一次做完加法之后,我们进行的移位操作是补码的算术右移,还记不记得补码的算术右移怎么做?就是符号位保持不变而高位到底填什么?你需要具体看符号位到底为多少,这个我们一会再带大家的复习,总之原码和补码乘法的又一规则是不太一样的啊,最后原码的符号位叫陈数的符号位是不参与运算的,而补码的陈述他的符号位必须参与运算两个源码的拳法,最终结果到底是正是负,我们是单独的用一个异或运算来确定,而补码的乘法是正是负,我们是直接通过加法和一位的运算,最终会自然而然地确定无码的乘法运算它的硬件构成和有什么不一样首先我们提到过一个很重要东西就是所谓的辅助位其实这个所谓的辅助位是吧扩展了一位是用心。斗记存器它的容量多扩展了一位试用新扩展的这一位来存储的,那这个辅助位初始是灵儿之后,我们每一轮不是会进行一个又一骂又一背标器,而之前que最低的这个呃,参与城运算的这一位会变成辅助位,所以大家需要注意在我们所谓的MQ寄存器里的最低位,指的是当前参与乘法运算的这一位,我们用这种描述方式只是为了和源码乘法的那个描述方式进行一个统一,大家也比较方便记忆,但事实上mq真正的最低位其实是这个辅助位才对,所以大家不要混淆,那由于MP里面新增加了一个被,所以他总共应该是有N+2这么多个为那另外一点值得注意的是我们的CPU里边的这些寄存器所有寄存器的长度一般都是统一的,所以由于MQ它多增加了一位,因此ACC还有X这些寄存器也会多增加一位,那多增加的这一位可以用来表示双符号位的,这种不慢注意的。我一般都是统一的,所以由于MQ它多增加了一位,因此ACC还有X这些计算器也会多增加一位,那多增加的这一位可以用来表示双符号V的这种补码好,另外需要注意的是在源码的乘法当中,我们刚开始是往X还有MQ里边存入了被乘数和乘数的绝对值,而这个地方我们是直接把它的符号位也就是完整的补码给存进来了,被陈述采用双符号位的不骂而陈述,采用单符号位的不骂,因为mq的最后一位会用来存放这所谓的辅助位,所以陈述就只能是单处号位的不骂,那由于之后每个人的加法有可能是加上X的,不骂也就直接加上啊,这个通用寄存器里存的值也有可能是要加上负X的补码,那为了实现X的补码到负X补满的一个快速转换,一般来说会有一个专门的辅助电路来完成这个事情,通过辅助电路的处理之后,送到aIU里面的数,就会直接变成副S的补码的一个形式,好那我们来看一下如何用手算的方式来模拟这个补码一位乘法。也是从王道书上来的,大家可以对比着自己的书来进行一些笔记,那这每一步的加法当中,我们都会把两个二进制比各位画上一个小小的下划线,那右边这一位就是我们刚才所谓的辅助位,而左边这一位就是我们所谓MQ的最低位,好刚开始由于辅助位减MQ的最低位等于0.1,也就是-1,所以第1次我们需要加的应该是副X的一个补码,那如何由补码求负X的补码,这个问题我们在之前探讨过,这就不再赘述,不熟悉的同学可以暂停来自己试一下,而经过第1次的加法之后,我们得到了一个加和的值,那这个加和的值其实是存在ACC,也就是哪家计算器里面的加法运算完成之后,ACC和MQ里的内容会统一的进行,一次又一个困难这一步数的又一我们就需要补一。职位新出现的这个空位,我们用和符号位相同的数来进行填补,然后向下边这一步啊,负数的右移,我们就需要补一这个我们在之前也探讨过,如果已经忘了同学可以回去再复习一下,好那到这一步为止,我们完成了第1轮的加法,还有算术又一接下来第2轮的加法由于此时辅助位减掉最低位是1-1,所以第2轮的加法应该加上呢,就是0,那么加0之后得到了一个结果,再进行一次算术右移,这样的话我们就完成了第2轮的加法和又一好,接下来由于辅助位减掉MQ的最低位是等于1,所以往后应该是加上X的符号,那这次加法得到的是一个复数啊,符号位为1,所以此时需要进行复数的算术右移在高位补一个1,这样我们完成了第3轮的加法和右移,那第4轮的加法和右移也是一样的,总共有4个数值位,所以需要进行4轮的加法,还有算术右移最后还需要再多进行一次家访只有家法没有一位。加法还有算术右移,不过我们之前说过补码在最后还需要再多进行一次加法,只有加法没有移位,那此时由于辅助位减掉mq的最低位是等于1,所以最后的这一次加法应该是加上X的补码,那需要注意的是最后这一次到底加多少,这点其实和我们原来陈述的这个符号位是有关的,这个0就是原本陈述的符号位,所以我们才说在补码的乘法当中,这个乘数的符号位也是会参与运算的,那这次的加法得到的这个数在拼接上MQ的前N个倍就可以得到最终的一个乘积结果,并且我们天然的得到了这个乘积的正负性,这两个数X和Y相乘得到了一个负的值,好,那这样的话我们就完成了X×Y的一个补码运算。的课本上的Y5指的是这个辅助位,然后Y四指的是我们刚才说的MQ的最低位,这是Y1,这是Y2Y3Y4Y5,让最高的这个符号为课本上把它记作了YS,好,那通过之前的例子,同学们再来回顾一下,我们刚开始对原码和补码的一个对比,相信大家能有更深的认识,比起源码的乘法来说,补码乘法除了在进行N轮的这个加法和一味之外,最后还要多来一次加法,最后的这一次加法会让陈数的符号位也参与到运算当中,另外在补码乘法中每一次的加法到底加什么?这点需要通过辅助位和MQ的最低位相减来进行判断到底要加什么,那这为什么MQ的最低位给他打了一个双引号啊?大家应该知道什么原因,因为事实上M的辅助位让我们只是为了和原码乘法的这样mm Q最低为进行一个类比啊,这样更方便记忆,所以我们采用这样的方式来描述再次强调源码的惩罚措施。 I’m que最低为进行一个类比啊,这样更方便记忆,所以我们才用这样的方式来描述好,另外再次再次强调源码的乘法当中,每次移位操作是逻辑移位就是符号位,也会参与移动,并且高位永远是贾玲儿补码的,一味都是算术右移,符号位是固定不变的,而空出来的V到底补多少?这个具体得看补码的正负性正数是要补0,负数是要补1好的,那以上就是定点数的乘法的一个实现思想。 

2.2.2-6-2 补码位乘法(Booth算法)「建议收藏」

 

免责声明:本站所有文章内容,图片,视频等均是来源于用户投稿和互联网及文摘转载整编而成,不代表本站观点,不承担相关法律责任。其著作权各归其原作者或其出版社所有。如发现本站有涉嫌抄袭侵权/违法违规的内容,侵犯到您的权益,请在线联系站长,一经查实,本站将立刻删除。 本文来自网络,若有侵权,请联系删除,如若转载,请注明出处:https://yundeesoft.com/24935.html

(0)

相关推荐

发表回复

您的邮箱地址不会被公开。 必填项已用 * 标注

关注微信