十变二:
原码:任意一个范围内的整数,它绝对值连续除以二取余,然后加上符号位。
如-100,
100÷2=50......0
50÷2=25......0
25÷2=12......1
12÷2=6......0
6÷2=3......0
3÷2=1......1
1÷2=0......1
然后从下往上为从高位到低位
(这里暂且使用8位的)
100原码=1100100
-为1,+为0
所以-100原码=11100100
反码:除符号位以外各个位取反(0变1,1变0)[只限负数]
-100反码=10011011
补码:反码+1[只限负数]
-100补码=10011100
注意:正数的原、反、补都相同,如正100的二进制:01100100
负数一般用补码表示,如-100的二进制:10011100
二变十:
最低位为0次方,第二位为1次方,第三位为2次方.....第n位是(n-1)次方
无符号或有符号正数直接用各个位的数乘2的对应次方,并将结果相加。
如有符号01100011
1×2^6+1×2^5+0×2^4+0×2^3+0×2^2+1×2^1+1×2^0
=64+32+2+1
=99
有符号负整数,则先求出原码再进行以上运算
如11110011
反码=11110010
原码=10001101
则-(0×2^6+0×2^5+0×2^4+1×2^3+1×2^2+0×2^1+1×2^0)
=-(8+4+1)
=-13
纯手打,有错误请及时指出,无错误望采纳。