计算机的CPU是不会算减法的,那么减法是怎么做的?
x - y = x + y的补数。
什么叫补数?反数加1。
什么叫反数?11111111减去y就是y的反数。 (在计算机内部可以直接按位取反,不用真的去算这个减法)
为什么x加上y的补数就是x-y?
因为 x + (11111111-y+1) = x + (11111111+1) - y = x + (100000000) - y = x + 0 - y = x - y
为什么100000000 = 0?因为溢出了。
x - y = x + y的补数。
什么叫补数?反数加1。
什么叫反数?11111111减去y就是y的反数。 (在计算机内部可以直接按位取反,不用真的去算这个减法)
为什么x加上y的补数就是x-y?
因为 x + (11111111-y+1) = x + (11111111+1) - y = x + (100000000) - y = x + 0 - y = x - y
为什么100000000 = 0?因为溢出了。