在计算机中,二进制负数通常采用 补码形式表示,具体规则如下:
最高位(最左边的位)为符号位,`0`表示正数,`1`表示负数。例如,`1000 0001`表示负数`-1`。
补码计算方法
- 原码: 直接在符号位后添加绝对值的二进制表示。例如,`-5`的原码为`101`(5的二进制)。 - 反码
- 8位二进制:
- `11111111`:有符号数表示`-127`(最高位1为负号,其余7位取反加1)。 - `00000001`:有符号数表示`1`,无符号数表示`128`(最高位0为正号)。 - 32位系统:例如`-5`的补码为`1111 1111 1111 1111 1111 1111 1111 1011`。
- 无符号数与有符号数需区分,例如`1111`在无符号数中为`255`,在有符号数中为`-1`。 - 补码是计算机内部统一处理负数的标准方式,编程时通常仅约定符号位,具体实现由硬件完成。
总结:
二进制负数通过符号位+补码表示,补码计算需先取反再加1。实际应用中,需根据数据类型(有符号/无符号)正确解析二进制数值。