亚洲乱码中文字幕综合,中国熟女仑乱hd,亚洲精品乱拍国产一区二区三区,一本大道卡一卡二卡三乱码全集资源,又粗又黄又硬又爽的免费视频

Java中的位運(yùn)算符、移位運(yùn)算詳細(xì)介紹

 更新時(shí)間:2013年12月17日 16:45:12   作者:  
這篇文章主要介紹了Java中的位運(yùn)算符、移位運(yùn)算,有需要的朋友可以參考一下

一.位運(yùn)算

Java中有4個(gè)位運(yùn)算,它們的運(yùn)算規(guī)則如下:

(1)按位與 (&) :兩位全為1,結(jié)果為1,否則為0;

(2)按位或 (|) :兩位有一個(gè)為1,結(jié)果為1,否則為0;

(3)按位取反(~):0 變 1, 1變0;


(4)按位異或(^):兩位,如果相同,結(jié)果為0;如果不同,結(jié)果為1;

注意:

(1)位運(yùn)算中的 符號(hào)位(最高位)也跟著變;

(2)位運(yùn)算符與邏輯運(yùn)算符(邏輯與&&、邏輯或||、邏輯非! )有點(diǎn)相似。但是,邏輯運(yùn)算符只能操作boolean變量

(也就是左右兩邊的值都是boolean值);


二.位運(yùn)算應(yīng)用


(1) ~5 = ?

a) 5的補(bǔ)碼為:

00000000 00000000 00000000 00000101

b) 5的按位取反(~)為:

11111111 11111111 11111111 11111010


注意:因?yàn)楦呶粩?shù)是1(負(fù)數(shù)),所以要將該補(bǔ)碼轉(zhuǎn)換為原碼;如果高位數(shù)是0(正數(shù))的話, 就不用將補(bǔ)碼轉(zhuǎn)為原碼,因?yàn)檎龜?shù)的原碼、反碼、補(bǔ)碼都一樣。

c) 將該負(fù)數(shù)的補(bǔ)碼轉(zhuǎn)為反碼:

11111111 11111111 11111111 11111001


d) 將該負(fù)數(shù)的反碼轉(zhuǎn)為原碼:

10000000 00000000 00000000 00000110


e) 將二進(jìn)制原碼 轉(zhuǎn)換為 十進(jìn)制:


10000000 00000000 00000000 00000110 = 0 * 2^0 + 1 * 2^1 + 1 * 2^2 = 0+2+4 = -6 (最高位為1,所以為負(fù)數(shù))


三. 移位運(yùn)算:

Java中有3個(gè)移位運(yùn)算符。


(1) 算術(shù)右移 (>>): 低位溢出,符號(hào)位不變,并用符號(hào)位補(bǔ)溢出的高位;

例如:a >> b :a是要移動(dòng)的數(shù),b是要移動(dòng)的位數(shù),下面同理;


(2) 算術(shù)左移(<< ): 符號(hào)位不變,低位補(bǔ)0;


(3) 邏輯右移(>>>): 低位溢出,高位補(bǔ)0;注意:邏輯右移(>>>)中的 符號(hào)位(最高位)也跟著變;

四. 注意點(diǎn):

位運(yùn)算與移位運(yùn)算,都是使用的二進(jìn)制的補(bǔ)碼,進(jìn)行操作的,切忌!

相關(guān)文章

  • java equals函數(shù)用法詳解

    java equals函數(shù)用法詳解

    java 中equals函數(shù)的使用方法是廣大java愛(ài)好者所關(guān)心的一個(gè)話題,本文將詳細(xì)介紹其使用方法,需要了解的朋友可以參考下
    2012-11-11
  • PowerJob Alarmable工作流程源碼剖析

    PowerJob Alarmable工作流程源碼剖析

    這篇文章主要為大家介紹了PowerJob Alarmable工作流程源碼剖析,有需要的朋友可以借鑒參考下,希望能夠有所幫助,祝大家多多進(jìn)步,早日升職加薪
    2024-01-01
  • idea中l(wèi)ombok的用法

    idea中l(wèi)ombok的用法

    lombok是開(kāi)源的代碼生成庫(kù),是一款非常實(shí)用的小工具,在更改實(shí)體類時(shí)只需要修改屬性即可,減少了很多重復(fù)代碼的編寫(xiě)工作,今天小編給大家介紹idea中l(wèi)ombok的用法,感興趣的朋友一起看看吧
    2021-12-12
  • SpringBoot集成Shiro進(jìn)行權(quán)限控制和管理的示例

    SpringBoot集成Shiro進(jìn)行權(quán)限控制和管理的示例

    這篇文章主要介紹了SpringBoot集成Shiro進(jìn)行權(quán)限控制和管理的示例,小編覺(jué)得挺不錯(cuò)的,現(xiàn)在分享給大家,也給大家做個(gè)參考。一起跟隨小編過(guò)來(lái)看看吧
    2018-03-03
  • Java事務(wù)的個(gè)人理解小結(jié)

    Java事務(wù)的個(gè)人理解小結(jié)

    數(shù)據(jù)庫(kù)操作的事務(wù)習(xí)慣上就稱為Java事務(wù)
    2013-03-03
  • Java全面深入探究SpringBoot攔截器與文件上傳

    Java全面深入探究SpringBoot攔截器與文件上傳

    攔截器對(duì)使用SpringMvc、Struts的開(kāi)發(fā)人員來(lái)說(shuō)特別熟悉,因?yàn)槟阒灰肴プ龊靡粋€(gè)項(xiàng)目必然會(huì)用到它,文件上傳是一個(gè)很常見(jiàn)的功能。在項(xiàng)目開(kāi)發(fā)過(guò)程中,我們通常都會(huì)使用一些成熟的上傳組件來(lái)實(shí)現(xiàn)對(duì)應(yīng)的功能
    2022-05-05
  • Spring 實(shí)現(xiàn)數(shù)據(jù)庫(kù)讀寫(xiě)分離的示例

    Spring 實(shí)現(xiàn)數(shù)據(jù)庫(kù)讀寫(xiě)分離的示例

    現(xiàn)在大型的電子商務(wù)系統(tǒng),在數(shù)據(jù)庫(kù)層面大都采用讀寫(xiě)分離技術(shù),我們通常的做法就是把查詢從主庫(kù)中抽取出來(lái),采用多個(gè)從庫(kù),使用負(fù)載均衡,減輕每個(gè)從庫(kù)的查詢壓力。
    2017-01-01
  • java實(shí)現(xiàn)輸入輸出流代碼分享

    java實(shí)現(xiàn)輸入輸出流代碼分享

    這篇文章主要介紹了java實(shí)現(xiàn)輸入輸出流代碼分享的相關(guān)資料,需要的朋友可以參考下
    2015-09-09
  • struts2實(shí)現(xiàn)多文件上傳的示例代碼

    struts2實(shí)現(xiàn)多文件上傳的示例代碼

    本篇文章主要介紹了struts2實(shí)現(xiàn)多文件上傳的示例代碼,小編覺(jué)得挺不錯(cuò)的,現(xiàn)在分享給大家,也給大家做個(gè)參考。一起跟隨小編過(guò)來(lái)看看吧
    2017-03-03
  • window系統(tǒng)安裝jdk jre的教程圖解

    window系統(tǒng)安裝jdk jre的教程圖解

    java開(kāi)發(fā)少不了安裝jdk,jdk可以同時(shí)安裝多個(gè)版本,只要在項(xiàng)目部署時(shí)注意切換版本選擇,下面小編給大家?guī)?lái)了window系統(tǒng)安裝jdk jre的教程圖解,感興趣的朋友一起看看吧
    2018-08-08

最新評(píng)論