二進位制原碼 反碼 補碼詳解

2021-07-02 05:42:07 字數 736 閱讀 1102

①  原碼:

原碼是指將最高位作為符號位(0表示正,1表示負),其它數字位代表數值本身的絕對值的數字表示方式。

例如:數字6 在計算機中原碼表示為:0 000 0110

其中,第乙個數字0是符號位,0表示正數,0 000110是數字6的二進位制資料表示。

數字-6 在計算機中原碼表示為:1 000 0110

以上是在8位計算機中的原碼表示,如果在32位或16位計算機中,表示方法也是一樣的,只是多了幾個數字0而已。

例如,在32位 計算機中數字6 的原碼表示為:00000000 0000 0000 0000 0000 0000 0110

在16位 計算機中數字6 的原碼表示為:00000000 0000 0110

②   反碼:

反碼表示規則為:如果是正數,則表示方法和原碼一樣;如果是負數,符號位不變,其餘各位取反,則得到這個數字的反碼表示形式。

例如,數字6 在8位 計算機中的反碼就是它的原碼:00000110

數字-6 在 8位計算機中的反碼為:11111001

③   補碼

補碼是計算機表示資料的一般方式,其規則為:如果是整數,則表示方法和原碼一樣;如果是負數,則將數字的反碼加上1(相當於將原碼數值位取反然後在最低位加1)。

例如:數字6 在8位 計算機中的補碼就是它的原碼:00000110

數字-6 在8 位 計算機中的補碼為:1111 1010

注意:0的反碼、補碼都為零

二進位制 真值 原碼 反碼 補碼

機器數 乙個數在計算機中二進位制的表示形式叫機器數,機器數是帶符號的 計算機使用最高位來表示符號位 負數為1 正數為0.假如計算機的字長為8位 那麼對於十進位制3的機器數表示為0000 0011 而對於 3的機器數表示為1000 0011。真值 由於機器數是帶符號的所以機器數的形式值就不等於實際的值...

java 二進位制原碼,反碼,補碼

強制型別轉換,用到原反補碼 就是二進位制定點表示法,即最高位為符號位,0 表示正,1 表示負,其餘位表示數值的大小。通過乙個位元組,也就是8個二進位制位表示 7和 7 0 符號位 0000111 1 符號位 0000111 正數的反碼與其原碼相同 負數的反碼是對其原碼逐位取反,但符號位除外。正數的補...

二進位制的原碼 反碼 補碼

如何表示二進位制數的正負呢 通常採用的方法是在二進位制數的前面加一位符號位,符號位為0表示這個數是正數,符號位位1表示這個數字負數,這種形式的數就稱為原碼。為什麼需要二進位制補碼 在做減法時,如果兩個數時用原碼表示的,則首先需要比較兩數絕對值的大小,然後以絕對值大的乙個數作為被減數 絕對值小的乙個作...