原码二位乘法100为什么是加2x?

如题所述

题主断章取义了,书上写:根据“100”加2x*

这句话是有语境的,这里的100前面的10是乘数的低位(最右)后面的0标志位Cj


什么是Cj呢?根据原码两位乘法的规则就能知道:

       当乘数两位状态为11时,需要加上3倍被乘数,这在计算机中不好直接实现。所以改成加上(4-1)倍被乘数。但这么规定后,两位乘数最大值只有11,也就是3。所以增加一个标志位Cj,当Cj为1时,给两位乘数加上一个“1”。

运算时就可以看成:加上“乘数的两位+Cj”倍的被乘数。


再回到:根据“100”加2x*  这句话

这里的100实际上就是(10+0),结果还是10,所以加2x*。


而Cj何时为0何时为1,看书上原码两位乘的运算规则表就可以了


温馨提示:答案为网友推荐,仅供参考
第1个回答  2020-06-01
圆满二位乘法100是加2叉的话,这个是他们公司一个套路的公司,套进去之后就是这个二叉了。
第2个回答  2020-06-01
睫毛二位乘法一百加入差二叉孩子失去是因为他的近被埋百度的敬畏这个原则。
第3个回答  2020-06-01
源码二维乘法100为什么是加成二查这个的话就有人,因为他有那个两个100呀,所以就是二叉。
第4个回答  2020-06-01
咱们二维惩罚100为什么,只+2X应该是24是一个记住你如果不加二儿子的话,你这个当时应该就不。