java 左移和右移
今天搜到一個比較好用的在線編譯器,希望和大家分享。
除了java還有c++....,地址是http://www.tutorialspoint.com/compile_java_online.php
另外今天再次復(fù)習(xí)了java左移和右移,這里針對負數(shù)舉個例子:
正數(shù)和負數(shù)在java中是以補碼的形式表示
例如-2 在計算機中表示為 11111111 11111111 11111111 11111110
1.左移
-2<<2 即-2左移2位的結(jié)果是:11111111 11111111 11111111 11111000 (低位補0)
上面是補碼,最高位為1表明這是負數(shù),負數(shù)的補碼是對正數(shù)的原碼進行:“最高位為1,其余各位取反,最后加1”得到的。
所以反推一下,就可以知道 -2<<2的結(jié)果實際上表示的數(shù)是10000000 00000000 00000000 00001000 (-8)
2.右移
高位是1則補1,高位是0則補0
-2>>2 : 11111111 11111111 11111111 11111111
10000000 00000000 00000000 00000001 (-1)
3.移位操作符可以和'='聯(lián)合起來用
a<<=2表示a左移2位后的值再賦給a
4.補充一下:java 虛擬機屏蔽了大端小端的問題,內(nèi)部都是小端。
相關(guān)文章:
1. Spring Boot和Thymeleaf整合結(jié)合JPA實現(xiàn)分頁效果(實例代碼)2. 詳解Android studio 動態(tài)fragment的用法3. 什么是python的自省4. 解決Android studio xml界面無法預(yù)覽問題5. Springboot Druid 自定義加密數(shù)據(jù)庫密碼的幾種方案6. Vuex localStorage的具體使用7. php模擬實現(xiàn)斗地主發(fā)牌8. Vue封裝一個TodoList的案例與瀏覽器本地緩存的應(yīng)用實現(xiàn)9. Spring MVC+ajax進行信息驗證的方法10. vue 使用localstorage實現(xiàn)面包屑的操作

網(wǎng)公網(wǎng)安備