1. 程式人生 > >JAVA-初步認識-第三章-位運算符

JAVA-初步認識-第三章-位運算符

定義 轉化 完全 邏輯運算 amp 裏的 十進制 設置 使用

一. 位運算符

這裏的位是指二進制位,bit位運算的符號。

觀看ppt可知,位運算符不止一個,是由多個運算符組成,甚至使用了之前定義過的運算符號。

二. 對不同的位運算符進行分析

a. &除了參與與運算外,還參與位運算,具體的位運算過程:6&3,一定要記得位運算是對二進制位進行計算,6的有效二進制位是110,而3的有效二進制位是011。&被運用到位運算中,仍然具備與運算的功能。對相同位置的二進制數進行邏輯運算,0代表著false,1代表著true。110&010=010,轉為10進制數就是2。最終,6&3=2. 註意:(1) 6實際上是int類型,具有32位二進制數,但在進行位運算時,都是采用的有效位,對於多余的0位並沒有參與運算。(2) &位運算還有一個特點,任意列舉一個兩個二進制數之間的&位運算,

0111-0101-1010-0110

&0000-0000-0000-1111

可以看出,這樣位運算的結果就是截取了後四位的數據。特殊情況下,截取數據也是&位運算的特色。

b. 同樣的,|位運算符的使用和&位運算符類似。|位運算的特點是,可以將兩個二進制數的有效位保留,1是有效位,

和前面說有效位不是一個意思。

c. ^位運算,^位運算的特點是保留所有,有一個1的位置的數據。一個數異或位運算同一個數兩次,則還是這個數。6^3=5, 6^3^3=6。

進過一次異或,數值完全發生了變化。如果轉化為二進制來看的話,裏面的二進制數完全發生了變化,相當於進行了加密。

為了保證數據的安全,加密過後要還原數據,將還原的程序設置在U盤內,這在日常生活中很常見。

上面這三種,通過借用邏輯運算符來充當位運算符,得出了一系列十進制的結果。但這些結果都不重要,

重要的是計算機利用這些機制,來做一些其他的用途。

d. ~反碼位運算。~6的反碼是-7。如何計算的要學會

JAVA-初步認識-第三章-位運算符