二进制负数为什么是正数的取反加1?

为什么要加1呢?对补码不理解

第1个回答  2014-09-24
squalzzz 说的很对,我再补充一点吧,计算机中最基本的操作是加法器的运算(如果不清楚加法器可以去了解一下汇编语言基础)。
看一下
6 00000110
-5 11111011
两者二进制相加,不考虑符号的话 是 1 00000001 取后八位正好是二进制的1 ,这样正好可以把二进制计算化作最简,忽略符号的考虑,令整个计算机效率上升。追问

能不能给加一下补码:
如:00000101-00000001=00000101+10000001=00000100+01111111=00000100

最高位是符号位0为正1为负,10000001的补码为01111111。
补码怎么转变的,看不懂?谢谢

追答

补码就是 1变0 ,0变1 00001101 的补码就是 11110010

本回答被网友采纳
第2个回答  2014-09-24
这个需要理解,这是机器语言!没必要纠结!知道就可以了!
相似回答