2015-09-02 107 views
2

我正在修改我在幾周內完成的考試。我有一個我已經回答的示例問題,但我不確定它是否正確。有人可以請我驗證我的答案,並解釋哪裏出錯,如果它不正確。使用符號幅度和二進制補碼的二進制算術

這裏有一個問題: 考慮符號 - 幅度表示法兩個二進制變量:A = 011111和B = 000001顯示涉及的所有步驟,以二進制格式執行以下操作(即不從二進制轉換爲另一種基數以獲得結果)。假設你只有六位可用於答案。

A-B使用二進制補碼。

這裏是我的回答: 使用兩的第B補 B = 000001 翻轉,並添加1

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

然後A +二的補體B

011111 
+111111 
------- 
011110 

最終的答案:011110

回答

1

使用2的減法補碼: -

二進制減法可以通過將加減法的二進制補碼加到被減數上來執行。 (被減數在a-b是一個和減數是在這種情況下b)中

  1. 如果最後進位產生,則丟棄的進位和應答由其餘位,它們是正的給定(被減數是比減數大 )。

  2. 如果最後的進位是0,則答案是否定的(被減數小於減數)並且是2的補碼形式。

現在,2的B的補碼= 111110 + 1 = 111111

接下來,A + 2的補B = 011111 + 111111 = 1011110.

正如你所看到的,總和出現在7位,我們有1作爲最終進位,所以按照規則1,我們需要丟棄進位。

所以,最終的答案= 011110.

你的回答這個答案相符的,因此,你的回答代表正確。

+1

謝謝你對我進行的驗證 – Volken

+0

@Volken - 你是最受歡迎的親愛的。如果您有任何其他疑問,請隨時詢問。 –