剑指offer做题收获之一:补码

在做求解数组子数组之和最大的时候,碰到  ngreatestSum=0x80000000 很诧异这个是表示什么值,

因为如果是0的话,数组全是负数的话,这个思路是行不通的。

所以,查阅资料后,

如果以8位表示的话:

-1000 0000就是-128
要表示-128先求-127
-127=1111 1111原=1000 0000反=1000 0001补
-1=1000 0001原=1111 1110反=1111 1111补
-127-1=-128=1000 0001补+ 1111 1111补=1000 0000(补)
实际上-128的补码就是-0的真值
No living without dream
原文地址:https://www.cnblogs.com/belongcai/p/4887168.html