使用2's Complement进行有符号数除法:12/10计算结果异常求解答
你的计算确实存在错误,正确结果应为商1、余数2
错误原因
补码除法(尤其是加减交替法)的核心规则是:每次迭代必须先将当前余数/被除数左移一位,再尝试减除数,以此判断是否够减并确定商的对应位值。你跳过了关键的左移操作,直接用初始被除数0000 1100加-10的补码1111 0110,这一步操作完全不符合除法的运算逻辑,导致后续商和余数的计算全部错误。
正确结果验证
12 ÷ 10的数学结果是商1、余数2,对应8位二进制:
- 商:
0000 0001 - 余数:
0000 0010
内容的提问来源于stack exchange,提问作者Rick
相关产品推荐
相关产品推荐

