题主断章取义了,书上写:根据“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,看书上原码两位乘的运算规则表就可以了