【操作系統】二進制小結

“世界上只有10種人,一種是懂二進制的,一種是不懂二進制”   

第一次看到這句話時楞了一下,這不就只有兩種人嗎?爲啥是10種人?印刷錯誤了吧?後來才反應過來,二進制的“10”等於十進制的“2“。看來,我還是不懂它。爲了成爲第一種人,就狂補了二進制的知識。下面,把對二進制的認識做個小結:

1.二進制的表示法

二進制是由1和0表示的計數方法。給一串二進制的數字,從右往左依次是2的0次方、2的1次方、2的2次方......以此推算下去,逢2進1。

2.二進制的運算

加法:

0+0=0,0+1=1 ,1+0=1, 1+1=10(向高位進位)

減法:

0-0=0,0-1=1(向高位借位) 1-0=1,1-1=0 (模二加運算或異或運算) ;

乘法:

0 * 0 = 0 0 * 1 = 0,1 * 0 = 0,1 * 1 = 1 二進制的除法:0÷0 = 0,0÷1 = 0,1÷0 = 0 (無意義),1÷1 = 1 ;

除法:

0÷1=0,1÷1=1

3.原碼、補碼、反碼

原碼:

原碼是一種計算機中對數字的二進制表示方法,數碼序列中最高位爲符號位,符號位爲0表示整數,符號位爲0表示負數;其餘有效值部分用二進制的絕對值表示。

反碼:

如果機器數是正數,則該機器數的反碼與原碼一樣;如果機器數是負數,則該機器數的反碼是對它的原碼(符號位除外)各位取反而得到的。

補碼:

如果機器是正數,則該機器數的補碼與原碼一樣,如果機器是負數,則該機器數的補碼是對它的原碼(符號位除外)各位取反,並在末位加1.

 

4.二進制與C語言中的溢出問題

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章