原码、反码、补码,计算机中所有的数都是以补码的形式存储的

计算机中所有的数都是以补码的形式存储的

原码:

一个数的原码就是其10进制的数转换为2进制数,正数的原码符号位为0,负数的原码符号位为1。

如10进制的数26667,将其转换为2进制为0110 1000 0010 1011。10进制的数-26667,将其转换为2进制为1110 1000 0010 1011。通过以上可以看出,正数和负数的原码除符号位外其它位全相同,因此计算10进制负数的原码时可以将其看成是正数求其原码,求得结果后再将符号位变为1表示该数为负数。

反码:

正数的反码就是其本身,负数的反码是符号位不参与变换,其它位取反。

如10进制的数26667,其反码和原码相同为0110 1000 0010 1011。10进制数-26667,其反码为1001 0111 1101 0100。

补码:

正数的补码就是其本身,负数的补码是反码加1。

如10进制的数26667,其补码、反码、原码相同为0110 1000 0010 1011。10进制数-26667,其补码为1001 0111 1101 0101。

猜你喜欢

转载自blog.csdn.net/weixin_43885532/article/details/109633607