2

我正在复习一周后的考试。我有一个我已经回答的示例问题,但我不确定它是否正确。有人可以为我验证我的答案,如果不正确,请解释 iv 哪里出错了。

这里是问题:考虑符号幅度符号中的两个二进制变量:A = 011111 和 B = 000001。显示所有涉及的步骤,以二进制格式执行以下操作(即,不要从二进制转换为另一个基数以获得结果)。假设您只有六位可用于答案。

AB 使用二进制补码。

这是我的答案:在 B B = 000001 翻转上使用二进制补码并加 1

 111110
+000001
 --------
 111111 

然后 A + 补码 B

 011111
+111111
-------
 011110

最终答案:011110

4

1 回答 1

1

使用 2 的补码进行减法:-

二进制减法可以通过将减数的 2 的补码添加到被减数来执行。a-b在这种情况下,被减数是 a,减数是 b)

  1. 如果产生最终进位,则丢弃进位,并由剩余的位给出答案,即正数(被减数大于减数)。

  2. 如果最后进位为 0,则答案是否定的(被减数小于减数)并且是 2 的补码形式。

现在,B 的 2 补码 = 111110 + 1 = 111111。

接下来,A + 2 的 B 补码 = 011111 + 111111 = 1011110。

如您所见,总和为 7 位,我们有 1 作为最终进位,因此根据规则 1,我们需要丢弃进位。

所以,最终答案 = 011110。

您的答案与此答案相匹配,因此,您的答案是正确的。

于 2015-09-02T14:03:35.640 回答