源码,补码,反码之间的相互转换
三者之间的相互转换要区别正负数
正数
源码,反码,补码之间都是相同的没什么好说的,它的符号位为0表示正数,用二进制正常表示出来就ok。
负数
先要得到源码,它的符号位为1,表示负数。负数的源码可以把数值部分像正数一样正常表示即可。
反码:将得到的源码除符号位外其余数值部分全部按位取反即可。
补码:在反码的基础上在末尾进行加1操作,按二进制运算即可。
有补码得到源码(得到具体的数值)
若已经知道源码
如果符号位为0 即表示为正数它的补码源码反码都一致
如果符号位为1 即表示是一个负数,除符号位外其余各位取反,然后在加1即可得到源码。之后在按2次幂计算即可得到具体数值