二进制小数减大数的计算方法可归纳为以下两种方式,具体选择取决于应用场景:
一、直接减法法(适用于无符号数)
操作步骤 直接用大数减去小数,结果取负号。例如:`01101 (13) - 00111 (7) = -00110 (-6)`
- 逐位相减,低位不够减时向高位借位。
示例
```
01101
- 00111
00110 (-6)
```
二、补码加法法(适用于有符号数)
操作步骤
- 将减数取反加1(即求补码);
- 将被减数与补码相加;
- 结果符号位由最高位决定。
示例
计算 `11101011 (123) - 01100110 (102)`:
- `01100110` 的补码为 `10011001`;
- `11101011 + 10011001 = 101101000`(溢出处理);
- 结果为 `-18`(二进制补码表示)。
注意事项
无符号数: 直接用大数减小数并加负号,无需补码操作。- 有符号数