本帖最后由 qq4916097 于 2015-7-5 15:34 编辑
1.正数的反码=补码=原码 如 3的原码=0000 0011 所以他的反码=补码=0000 0011
为什么3的原码是0011呢? 你用8421来看待,千位是8,百位是4,十位是2,个位是1。
而前面的0000代表 千位(符号位0为正1为负) 百位(64) 十位(32) 各位(16),
64 32 16 8 4 2 1 想到什么了么 从右向左看 对 没错 就是2的N次方
0011=>0*8+0*4+1*2+1*1=3 心算3=1+2 即为0011 9=1+8 即为1001 9=2+8 即为1010 以此类推
2.负数的原码
原码和正数一样,只是将最高位变为1.如-3=1000 0011 因为3=0000 0011 -3就是在3的基础上将符号位变为1 所以为1000 0011
负数的反码=原码取反(记住 不包括符号位)。如-3的原码是=1000 0011 取反得1111 1100(最左边的1为符号位)
负数的补码=反码+1,如-3的反码是1111 1100 所以他的补码是1111 1101
|