無符號數、有符號數、原碼、反碼、補碼


無符號數與有符號數:

無符號數:

  正數,它的值就是它的絕對值。10011010---9A  、154

有符號數:(由二進制第一位數決定)

  編碼規則與無符號數不同。有符號數最高位是0表示這個數是正數(此時與無符號數的編碼規則一樣的)。是1表示負數。

比如:  00011010---第一個為0表示這個數為正數,即值為1A;

有符號數的編碼規則:

  原碼:最高位為符號位,其余各位為數值本身的絕對值

  反碼:

    • 正數:反碼與原碼相同 
    • 負數:符號位為1,其余位對原碼取反

  補碼:

    • 正數:補碼與原碼相同
    • 負數:符號位為1,其余位對原碼取反加1

 比如:

有符號數 原碼 反碼 補碼 說明
1 00000001 00000001 00000001 正數的原碼、反碼補碼一樣
6 00000110 00000110 00000110  
 -1 10000001 11111110 11111111  負數以補碼形式保存
-7   10000111 11111000 11111001  

 

 結論:

  正數:以原碼形式存儲

  負數:以補碼形式存儲


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM