Binary 进位过多的有符号乘法

Binary 进位过多的有符号乘法,binary,Binary,我试着将两个有符号的二进制数相乘:111011和110100 我正在使用找到的方法 我不完全确定我错了,也许我只是误解了结果,但无论如何: 当我执行部分积的加法时,在我最左边的列上,包括进位,1+1+1+1(所有的部分积都被符号扩展以匹配最终结果的长度,应该是6+6=12),这意味着我得到一个进位2到左边,使我得到的数字长度为14位。我认为乘法的结果不应该超过被乘数的长度之和,但是我肯定不能对部分积进行符号扩展,否则这种情况总会发生。这里到底出了什么问题?如果它是正确的,我怎么知道要丢弃多少位呢

我试着将两个有符号的二进制数相乘:111011和110100

我正在使用找到的方法

我不完全确定我错了,也许我只是误解了结果,但无论如何:

当我执行部分积的加法时,在我最左边的列上,包括进位,1+1+1+1(所有的部分积都被符号扩展以匹配最终结果的长度,应该是6+6=12),这意味着我得到一个进位2到左边,使我得到的数字长度为14位。我认为乘法的结果不应该超过被乘数的长度之和,但是我肯定不能对部分积进行符号扩展,否则这种情况总会发生。这里到底出了什么问题?如果它是正确的,我怎么知道要丢弃多少位呢?我只能想象,如果这个单词是128位长,那么我就必须丢弃无数位?所以这不可能是对的

我得到的标志是:

111011 * 110100 = 000000000000+

00000000000+

1111111011+

000000000+

11111011+

0000101=

1000万111100

(根据链接中的说明,最后一个部分积是第一个被乘数的2s补码)

所以我再次问:到底是什么问题?提前谢谢