正数的原码,反码,补码都是一样的。
负数的原码用其绝对值的正数原码表示,反码在原码基础上求反,补码在反码的基础上加1.
原码:将一个整数,转换成二进制,就是其原码。 如单字节的5的原码为:0000 0101;-5的原码为1000 0101。 反码:正数的反码就是其原码;负数的反码是将原码中,除符号位以外,每一位取反。 如单字节的5的反码为:0000 0101;-5的反码为1111 1010。 补码:正数的补码就是其原码;负数的反码+1就是补码。 如单字节的5的补码为:0000 0101;-5的原码为1111 1011。 在计算机中,正数是直接用原码表示的,如单字节5,在计算机中就表示为:0000 0101。 负数用补码表示,如单字节-5,在计算机中表示为1111 1011。
可以参考以下文章:
https://www.cnblogs.com/dingyingsi/p/6075967.html
https://www.cnblogs.com/hello-yz/p/3249175.html