- 相關(guān)推薦
java位操作符的知識(shí)
二進(jìn)制負(fù)數(shù)以它正值的補(bǔ)碼形式表達(dá)
補(bǔ)碼:反碼+1等于補(bǔ)碼
比如:System.out.println(Integer.toBinaryString(-5));
打印:1111 1111 1111 1111 1111 1111 1111 1011 不用想了肯定是32位
過程是這樣的:
一個(gè)負(fù)數(shù),比如-5,它的二進(jìn)制在java里面是這樣表示
1000 0000 0000 0000 0000 0000 0000 0101
它的正值是:
0000 0000 0000 0000 0000 0000 0000 0101
反碼是:
1111 1111 1111 1111 1111 1111 1111 1010
再加上1是:
1111 1111 1111 1111 1111 1111 1111 1011
即得到打印的內(nèi)容
java ~ 操作符,對每個(gè)二進(jìn)制位的內(nèi)容求反,即1變成0,0變成1
測試負(fù)數(shù):
int a = -5;//101;
System.out.println(~a);
打印:
過程是這樣的,首先表示出來這個(gè)負(fù)數(shù)
1111 1111 1111 1111 1111 1111 1111 1011(上面已經(jīng)提到為什么這樣表示)
【java位操作符的知識(shí)】相關(guān)文章:
java位操作符是什么07-18
Java基礎(chǔ)知識(shí)精選09-07
Java代碼的基本知識(shí)10-09
了解Java語言小知識(shí)09-24
Java基礎(chǔ)知識(shí)概述05-16
Java基礎(chǔ)知識(shí)點(diǎn)07-07
Java基礎(chǔ)語法知識(shí)點(diǎn)07-31
C++operator操作符技巧09-15