加法器如何计算无符号数减法
这个问题困扰了我好久。对于有符号数来说,A-B=A+(-B)即是A+B的补码(A和B都为正数),这个好理解。
举个例子,在4位二进制系统里面,对于有符号数,7-3=0111-0011=0111+1101=(1)0100括号里面的为进位,根据有符号数加法的规则,我们知道7-3没有溢出,所以结果0100是对的。
但是对于无符号数来说,如果没有减法器,只有加法器,那么在计算7-3时候会有什么情况呢,如果我们还是用上面的方式来计算,即7-3=0111-0011=0111+1101=(1)0100,那么根据无符号数加法的规则,有进位就代表溢出,那么也就是说结果0100溢出了,但事实上这个结果是没有溢出的。这么说来,加法器岂不是不能用来计算无符号数减法???
但是为什么很多书都说减法可以由加法器来实现呢?