1. 程式人生 > 其它 >數電=二進位制補碼運算

數電=二進位制補碼運算

  在將兩個帶符號的數相加時,有時需要將兩數的絕對值相加(當兩數符號相同時),有時
需要將兩數的絕對值相減(當兩數符號不同時)。而且,在兩數符號不同時,首先要判斷兩數
絕對值的大小,然後才能確定哪一個是被減數,哪一個是減數。這一系列的操作顯然比較繁
瑣。為簡化運算,目前在數字系統中普遍採用補碼相加的方法來實現帶符號數的加法運算。
  為了幫助讀者理解補碼運算的原理,讓我們先來看一個日常生活中經常會碰到的事例。
例如,你在早晨 6 點鐘醒來時發現自己的手錶停在了 11 點上,於是需要把錶針撥到 6 點鐘。
這時可以有兩種不同的撥法,一種是往回撥 5 格,即 11—5=6;另一種是往前撥7格。雖然
11+7=18,但由於錶盤的刻度是十二進位制,超過 12 以後的進位自動消失了,只剩下了餘數,
即18—12=6。可見,後一種撥法也把錶針撥到了 6 點鐘,如圖 1. 3.1 所示。

圖 1.3.1 說明補碼運算原理的例項