二進位制補習--原碼 反碼 補碼
1、二進位制的最高位是符號位:0表示正數,1表示負數。
2、正數的原碼、反碼、補碼都一樣。
3、負數的反碼=它的原碼符號位不變,其它位取反(0-〉1,1-〉0)。
4、負數的補碼=它的反碼+1.
5、0的反碼、補碼都是0.
6、在計算機運算的時候,都是以補碼的方式來運算的。
運算:二進位制的進製規則是「逢二進一」,借位規則是「借一當二」。
十進位制:有10個基數:0 ~~ 9 ,逢十進一,借位規則是「借一當十」。
二進位制:有2 個基數:0 ~~ 1 ,逢二進一,借位規則是「借一當二」。
八進位制:有8個基數:0 ~~ 7 ,逢八進一,借位規則是「借一當八」。
十六進製制:有16個基數:0 ~~ 9,a,b,c,d,e,f (a=10,b=11,c=12,d=13,e=14,f=15) ,逢十六進一
二進位制的四則運算:
加法0+0=0,0+1=1+0=1,1+1=10
減法0-0=0,1-0=1,1-1=0,0-1=-1,10100-1010=1010
乘法0×0=0,0×1=1×0=0,1×1=1
除法0÷1=0,1÷1=1
對於其它進製轉換為十進位制比較簡單,下面舉例說明:在此說明一下,一般常用進製有簡寫,這樣是為了不混淆,如十進位制一般在末尾加個字母d[一般習慣都不加],二進位制加個b,八進位制q,十六進製制h.
例如:123d、1011b、123q、ab9h
123d=1×100+2×10+3×1=123 0.11d=1*10(-1)+1*10(-2)
1011b=(1×8+0×4+1×2+1×1)d=11 0.11b=1*2(-1)+1*(-2)
123q=(1×64+2×8+3×1)d=83 0.11q=1*8(-1)+1*8(-2)
ab9h=(10×256+11×16+9×1)d=2745 0.11h=1*16(-1)+1*16(-2)
十進位制轉換為二進位制技巧
只能舉例了,文字說不清的,通常將乙個十進位制數的整數部分和小數部分分開處理。
1、整數的數制轉換;
——採用「基數除法」,具體步驟如下:
(1)將給定的十進位制整數除以基數2,餘數便是等值的二進位制的最低位。
(2)將上一步的商再除以基數2,餘數便是等值的二進位制數的次低位。
(3)重複步驟2,直到最後所得的商等於0為止。各次除得的餘數,便是二進位制各位的數,最後一次的餘數是最高位
粘上熟悉的一張圖:
二進位制與八進位制十六進製制轉換技巧:
二進位制從最低位開始每三位轉換為十進位制即為其對應八進位制
高位不足三位,補零
同理二進位制從最低位開始每四位轉換為十進位制即為其對應十六進製制
高位不足四位,補零
如(1001100)2=(114)8=(4c)16
二進位制原碼 反碼 補碼詳解
原碼 原碼是指將最高位作為符號位 0表示正,1表示負 其它數字位代表數值本身的絕對值的數字表示方式。例如 數字6 在計算機中原碼表示為 0 000 0110 其中,第乙個數字0是符號位,0表示正數,0 000110是數字6的二進位制資料表示。數字 6 在計算機中原碼表示為 1 000 0110 以上...
二進位制 真值 原碼 反碼 補碼
機器數 乙個數在計算機中二進位制的表示形式叫機器數,機器數是帶符號的 計算機使用最高位來表示符號位 負數為1 正數為0.假如計算機的字長為8位 那麼對於十進位制3的機器數表示為0000 0011 而對於 3的機器數表示為1000 0011。真值 由於機器數是帶符號的所以機器數的形式值就不等於實際的值...
java 二進位制原碼,反碼,補碼
強制型別轉換,用到原反補碼 就是二進位制定點表示法,即最高位為符號位,0 表示正,1 表示負,其餘位表示數值的大小。通過乙個位元組,也就是8個二進位制位表示 7和 7 0 符號位 0000111 1 符號位 0000111 正數的反碼與其原碼相同 負數的反碼是對其原碼逐位取反,但符號位除外。正數的補...