強制型別轉換,用到原反補碼
就是二進位制定點表示法,即最高位為符號位,「0」表示正,「1」表示負,其餘位表示數值的大小。
通過乙個位元組,也就是8個二進位制位表示+7和-7
0(符號位) 0000111
1(符號位) 0000111
正數的反碼與其原碼相同;負數的反碼是對其原碼逐位取反,但符號位除外。
正數的補碼與其原碼相同;負數的補碼是在其反碼的末位加1
一、原碼,最高位為符號位,「0」表示正,「1」表示負,其餘位表示數值的大小
左邊是最高位,右邊是最低位
+7:0 0000111 (1*2^2 + 1*2^1 + 1*2^0 = 4 + 2 + 1)
-7 1 0000111
8個1:11111111(先不分正負數) = 255
7個1:1111111(先不分正負數) = 127
二、反碼
正數的反碼與其原碼相同;負數的反碼是對其原碼逐位取反,但符號位除外。
+7:0 0000111(原碼)
+7:0 0000111(反碼)
-7:1 0000111(原碼)
-7:1 1111000(反碼)
三、補碼
正數的補碼與其原碼相同;負數的補碼是在其反碼的末位加1
+7:0 0000111(原碼)
+7:0 0000111(反碼)
+7:0 0000111(補碼)
-7:1 0000111(原碼)
-7:1 1111000(反碼) + 1
-7:1 1111001(補碼)
總結:正數的原碼反碼補碼是一樣,
二進位制原碼 反碼 補碼詳解
原碼 原碼是指將最高位作為符號位 0表示正,1表示負 其它數字位代表數值本身的絕對值的數字表示方式。例如 數字6 在計算機中原碼表示為 0 000 0110 其中,第乙個數字0是符號位,0表示正數,0 000110是數字6的二進位制資料表示。數字 6 在計算機中原碼表示為 1 000 0110 以上...
二進位制 真值 原碼 反碼 補碼
機器數 乙個數在計算機中二進位制的表示形式叫機器數,機器數是帶符號的 計算機使用最高位來表示符號位 負數為1 正數為0.假如計算機的字長為8位 那麼對於十進位制3的機器數表示為0000 0011 而對於 3的機器數表示為1000 0011。真值 由於機器數是帶符號的所以機器數的形式值就不等於實際的值...
二進位制的原碼 反碼 補碼
如何表示二進位制數的正負呢 通常採用的方法是在二進位制數的前面加一位符號位,符號位為0表示這個數是正數,符號位位1表示這個數字負數,這種形式的數就稱為原碼。為什麼需要二進位制補碼 在做減法時,如果兩個數時用原碼表示的,則首先需要比較兩數絕對值的大小,然後以絕對值大的乙個數作為被減數 絕對值小的乙個作...