Java 與 或 非 異或

2021-07-08 09:26:06 字數 1050 閱讀 3744

位運算子主要針對二進位制,它包括了:「與」、「非」、「或」、「異或」。從表面上看似乎有點像邏輯運算子,但邏輯運算子是針對兩個關係運算子來進行邏輯運算,而位運算子主要針對兩個二進位制數的位進行邏輯運算。下面詳細介紹每個位運算子。

1.與運算子

與運算子用符號「&」表示,其使用規律如下:

兩個運算元中位都為1,結果才為1,否則結果為0,例如下面的程式段。

public class data13 }

執行結果

a 和b 與的結果是:128

下面分析這個程式:

「a」的值是129,轉換成二進位制就是10000001,而「b」的值是128,轉換成二進位制就是10000000。根據與運算子的運算規律,只有兩個位都是1,結果才是1,可以知道結果就是10000000,即128。

2.或運算子

或運算子用符號「|」表示,其運算規律如下:

兩個位只要有乙個為1,那麼結果就是1,否則就為0,下面看乙個簡單的例子。

public class data14 }

執行結果

a 和b 或的結果是:129

下面分析這個程式段:

a 的值是129,轉換成二進位制就是10000001,而b 的值是128,轉換成二進位制就是10000000,根據或運算子的運算規律,只有兩個位有乙個是1,結果才是1,可以知道結果就是10000001,即129。

3.非運算子

非運算子用符號「~」表示,其運算規律如下:

如果位為0,結果是1,如果位為1,結果是0,下面看乙個簡單例子。

public class data15 }

4.異或運算子

異或運算子是用符號「^」表示的,其運算規律是:

兩個運算元的位中,相同則結果為0,不同則結果為1。下面看乙個簡單的例子。

public class data16 }

執行結果

a 與 b 異或的結果是:13

分析上面的程式段:a 的值是15,轉換成二進位制為1111,而b 的值是2,轉換成二進位制為0010,根據異或的運算規律,可以得出其結果為1101 即13。

與( ) 非( ) 或( ) 異或( )

位運算子主要針對二進位制,它包括了 與 非 或 異或 從表面上看似乎有點像邏輯運算子,但邏輯運算子是針對兩個關係運算子來進行邏輯運算,而位運算子主要針對兩個二進位制數的位進行邏輯運算。下面詳細介紹每個位運算子。1 與運算子 與運算子用符號 表示,其使用規律如下 兩個運算元中位都為1,結果才為1,否則...

與( ) 或( ) 非( ) 異或( )運算

序言 定義 1為真,0為假 與 與運算可以理解為某些語言中的 and 運算規則 運算子左右兩邊均為真,整體為真,其餘為假。左側右側 與 0 假 0 假 0 假 0 假 1 真 0 假 1 真 0 假 0 假 1 真 1 真 1 真 或 或運算可以理解為某些語言中的 or 運算規則 有真為真,無真為假...

移位 位與 或 異或 非

j a位運算子有 左移 右移 無符號右移 位與 位或 位非 位異或 除了位非 是一元操作符外,其它的都是二元操作符。原碼 乙個整數,按照絕對值大小轉換成的二進位制數,稱為原碼。00000000 00000000 00000000 00000101 是5的原碼反碼 將二進位制數按位取反,所得的新二進位...