1111 1111 1111 1111 1111 1111 1010 1110 ffffffae
& 0000 0000 0000 0000 0000 0000 1111 1111 0Xff
___________________________________________________
0000 0000 0000 0000 0000 0000 1010 1110
0 0 0 0 0 0 A E
& 0000 0000 0000 0000 0000 0000 1111 1111 0Xff
___________________________________________________
0000 0000 0000 0000 0000 0000 1010 1110
0 0 0 0 0 0 A E
1111 1111 1111 1111 1111 1111 1011 0000 ffffffb0
& 0000 0000 0000 0000 0000 0000 1111 1111 0Xff 0x表16位
___________________________________________________
0000 0000 0000 0000 0000 0000 1011 0000
0 0 0 0 0 0 B 0
& 0000 0000 0000 0000 0000 0000 1111 1111 0Xff 0x表16位
___________________________________________________
0000 0000 0000 0000 0000 0000 1011 0000
0 0 0 0 0 0 B 0
>>表示右移,如果該數(shù)為正,則高位補0,若為負數(shù),則高位補1;
>>>表示無符號右移,也叫邏輯右移,即若該數(shù)為正,則高位補0,而若該數(shù)為負數(shù),則右移后高位同樣補0。
例如:
res = 20 >> 2;
20的二進制為 0001 0100,右移2位后為 0000 0101,則結(jié)果就為 res = 5;
<< 是與>>對應(yīng)的左移運算符,表示將exp1向左移動exp2位,在低位補0。其實,向左移動n位,就相當(dāng)于乘以2^n。
左移沒有<<<運算符!
>>>表示無符號右移,也叫邏輯右移,即若該數(shù)為正,則高位補0,而若該數(shù)為負數(shù),則右移后高位同樣補0。
例如:
res = 20 >> 2;
20的二進制為 0001 0100,右移2位后為 0000 0101,則結(jié)果就為 res = 5;
<< 是與>>對應(yīng)的左移運算符,表示將exp1向左移動exp2位,在低位補0。其實,向左移動n位,就相當(dāng)于乘以2^n。
左移沒有<<<運算符!
2017-08-11
java入門一二三看完,再把二進制基礎(chǔ)看完,基本上學(xué)習(xí)來還行。
2017-08-11
吐槽一下,老師寫if語句時沒有加大括號,然后我寫的時候加了,運行結(jié)果就和老師的不一樣,我只想說,碰到if還是加大括號好些,畢竟沒有老師這么強的編程能力。有大括號的時候
大括號里面所有的 都歸if管。只有條件為真的時候 才會執(zhí)行。
沒有大括號的時候 只有下面的一句歸if管,
大括號里面所有的 都歸if管。只有條件為真的時候 才會執(zhí)行。
沒有大括號的時候 只有下面的一句歸if管,
2017-08-11