负数的补码就是对反码加1,而正数不变,正数的原码反码补码是一样的.
1.补码的得来:是为了让负数变成能够加的正数,因此,负数的补码=模-负数的绝对值
比如:-1
补码:1111
1111(10000
0000
-1得来)
当一个数要减1的时候,可以直接加
1111
1111
2.原码的得来:(负数的原码,直接把对应正数的最高位改为1)
原码能够直观的表示一个负数(能直观的把真值显示出来,如
-1为1000
0001
其中最高位表示符号位,不进行算术计算)
--------------
根据第二点的规则:负数的原码,直接把对应正数的最高位改为1。
(61)10=(3D)16=(0011
1101)2>>将最高位改为1,则变为>>(1011
1101)2。
所以,-61的八位二进制原码是1011
1101。