機器數與真值,原碼反碼補碼


機器數與真值

1、機器數

機器數是帶符號的,在計算機用一個數的最高位存放符號,正數為0,負數為1.

(假設字長為 8 位)

 3 的機器數 0000-0011
-3 的機器數 1000-0011

2、真值

因為第一位是符號位,所以機器數的形式值就不等於真正的數值。

為區別起見,將帶符號位的機器數對應的真正數值稱為機器數的真值

機器數      -->   真值
0000-0011   -->    3
1000-0011   -->   -3

原碼反碼補碼

1、原碼

符號位加上真值的絕對值,即用第一位表示符號,其余位表示值

 5[原]  --> 0000-0101
-5[原]  --> 1000-0101

2、反碼

反碼的表示方法是:

  • 正數的反碼是其本身

  • 負數的反碼是在其原碼的基礎上, 符號位不變,其余各個位取反.

 5[反] = 0000-0101
-5[反] = 1111-1010(原碼:1000-0101)

3、補碼

補碼的表示方法是:

  • 正數的補碼就是其本身

  • 負數的補碼是在其原碼的基礎上, 符號位不變, 其余各位取反, 最后+1. (即在反碼的基礎上+1)

 5[補] = 0000-0101
-5[補] = 1111-1011(反碼 1111-1010 --> 末位加一得補碼)

深入理解


免責聲明!

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



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