-54的補碼是1-001010-30的補碼是1-100010有兩種方法解決:1.擴增位數用七位數表示數字位,那麼-54的補碼是1-1001010-30的補碼是1-1100010相加的話數字位運算結果會發生溢位,進位到符號位剛好變成1。兩個正數相加溢位變成負數和兩個負數相加溢位變成正數都可以這樣解決。2.雙符號位表示法如果用兩個位數來表示符號位-54的補碼是11-001010-30的補碼是11-100010結果符號位為110,最高位的1溢位變成10。結果的符號位中高位(靠左邊的那位)符號位永遠是正確的,低位的不一定。雙符號位表示法中正數是00-xxxxxxx負數是11-xxxxxxx運算結果的符號位可能出現00,01,10,11四種情況,無論哪一種情況都可以直接根據符號位中的高位判斷運算結果。當運算結果的兩個符號位不同時(01和10兩種情況)說明發生了溢位,當運算結果的兩個符號位相同時(00和11兩種情況)說明沒有溢位。如果運算結果還需要參與其他運算需要先將符號位中的低位變成和高位一樣才能參與運算。
-54的補碼是1-001010-30的補碼是1-100010有兩種方法解決:1.擴增位數用七位數表示數字位,那麼-54的補碼是1-1001010-30的補碼是1-1100010相加的話數字位運算結果會發生溢位,進位到符號位剛好變成1。兩個正數相加溢位變成負數和兩個負數相加溢位變成正數都可以這樣解決。2.雙符號位表示法如果用兩個位數來表示符號位-54的補碼是11-001010-30的補碼是11-100010結果符號位為110,最高位的1溢位變成10。結果的符號位中高位(靠左邊的那位)符號位永遠是正確的,低位的不一定。雙符號位表示法中正數是00-xxxxxxx負數是11-xxxxxxx運算結果的符號位可能出現00,01,10,11四種情況,無論哪一種情況都可以直接根據符號位中的高位判斷運算結果。當運算結果的兩個符號位不同時(01和10兩種情況)說明發生了溢位,當運算結果的兩個符號位相同時(00和11兩種情況)說明沒有溢位。如果運算結果還需要參與其他運算需要先將符號位中的低位變成和高位一樣才能參與運算。