原码是计算机中用于表示有符号整数的二进制编码方式,其规则如下:
符号位表示
- 最高位(第1位)为符号位:
- `0` 表示正数
- `1` 表示负数
- 例如:
- 正数 `6` 的原码为 `00001001`
- 负数 `-6` 的原码为 `10001001`
数值位表示
- 符号位后的所有位表示数值,采用 二进制补全方式:
- 正数直接转换(如 `9` → `00001001`)
- 负数需先取绝对值的二进制,再按位取反(如 `-9` → `10001001`)
示例说明
- 数值 `6` 的转换过程:
- 二进制表示为 `0110`
- 原码为 `00001010`(符号位补零至8位)
- 数值 `-6` 的转换过程:
- 绝对值 `6` 的二进制为 `00001010`
- 取反后为 `11110101`
- 补码为 `11110110`(最低位加1)
注意事项
原码存在 运算复杂的问题,例如加法需考虑符号位,减法需借位,因此实际计算机中多采用补码表示。- 本示例采用 8位表示,实际应用中常使用 固定位数(如8位、16位、32位等)。