数据的表示(原码、反码、补码、移码)

原码:数值转成二进制就是原码,而最高位作为符号位,用来表示正负(正数符号位为0,负数符号位为1)

原码是不能直接在机器里直接做运算的.所以才会有其他的表示方式

比如1-1=1的原码+(-1)的原码,0000 0001+1000 0001,而结果是-2的原码1000 0010;

正数的原码和反码还有补码是完全相同的,而负数就不一样了.

负数的反码:符号位不变,其他位置按位取反1变成0,0变成1.就是负数的反码了.

负数的补码:就是负数的反码+1.

移码:在补码的基础上,把首位做取反.

各种数值表现方法能够表示的数值范围:

  n是位数.(8位=1字节)

原文地址:https://www.cnblogs.com/youjunhui/p/14590004.html