在计算机中,负数主要有以下几种表示方法:
原码
原码是数的直接二进制表示,最高位为符号位,0表示正数,1表示负数。例如,-5的原码是`1000001`。
反码
反码是负数的原码中除符号位外,每一位取反。例如,-5的反码是`1111110`。
补码
补码是在反码的基础上加1。例如,-5的补码是`1111111`。
在计算机系统中,负数的补码表示法被广泛采用,因为它具有以下优点:
负数的补码与其正数的补码之间的转换可以用同一种方法(求补运算)完成,简化了硬件设计。
将减法运算转换为加法运算,省去了减法器。
无符号及带符号的加法运算可以用同一电路完成。
因此,在计算机中,负数通常以补码的形式存储和计算。