原码、反码和补码的计算

版权声明:本文为博主原创文章,未经博主允许不得转载。 https://blog.csdn.net/mChenys/article/details/84306281
  • 原码:就是二进制点表示法,正数最高位是0,负数最高位是1,其余位表示数值大小
  • 反码:正数的反码与原码相同;负数的反码符号位不变,其余位和原码相反
  • 补码:正数的补码和原码相同;负数的补码等于其反码的末尾+1,

在计算机内,所有数据的运算都是采用补码进行的

例1.已知某数x的原码为10110100,求x的补码和反码?
从最高位是1可以看出,这是一个负数的原码

操作 符号位 数值位
原码 1 011 0100
反码 1 100 1011
补码 (反码+1) 1 100 1100

例2.已知某数x的补码为11101110,求其原码?
最高位是1可知是负数,由于负数的补码=反码+1,所以反码=补码-1,最后再根据反码求其原码。

操作 符号位 数值位
补码 1 110 1110
反码(补码-1) 1 110 1101
原码(反码取反) 1 001 0010

猜你喜欢

转载自blog.csdn.net/mChenys/article/details/84306281