數的補碼表示及其加減運算
負數的補碼表示:相應的正數按位求反,末位加1即為該負數的補碼表示
求負數補碼表示的方法:
?。?)寫出與該負數相對應的正數的補碼
(2)按位求反
?。?)末位加一
例:假設機器字長為8位,求-46的補碼。
+ 46的補碼表示為: 0010 1110
按位求反: 1101 0001
末位加一 1101 0010
所以,[-46]補碼 = D2H
符號擴展:是指一個數從位數較少擴展到位數較多,如從8位擴展到16位,或從16位擴展到32位。
對于用補碼表示的數,正數的符號擴展在前面補0,負數的符號擴展在前面補1,假設機器字長為16位,[+46]補碼 = 002EH,[-46]補碼 = FFD2H。
對一個二進制數按位求反、末位加一的運算稱為求補運算.
在機器里,補碼減法是通過對減數求補后把減法轉換為加法進行的。符號位參加運算,能自動得到正確結果。
評論