用N位表示的數字的2的補數是2^N數。例如:如果number是7(0111)並且我用4位表示它,那麼它的2的補碼將是(2^N-number),即(2^4 -7)= 9(1001)
爲什麼我們在做2的補碼時需要加1
7==> 0111
1's compliment of 7==> 1000
1000
+ 1
-------------
1001 =====> (9)
在計算2的一些補充,我們做以下步驟:1。 做數量的補 2.添加一個步驟1的結果
我明白,我們需要因爲我們正在進行否定操作,所以要補數。但爲什麼我們添加1?
這可能是一個愚蠢的問題,但我很難理解邏輯。用上面的例子來解釋(對於數字7),我們做補碼並得到-7,然後加+1,所以-7 + 1 = -6,但仍然得到正確的答案,即+9