【C語言】 與或非
邏輯運算
邏輯非的優先級最高,邏輯與次之,邏輯或最低,即:!(非) → &&(與) → ||(或)
記憶口訣:not(非) and(與) or(或)
運算規則
1)&&:當且僅當兩個運算量的值都爲"真"時,運算結果爲"真",否則爲"假"。
同真爲真,一假則假
2) || :當且僅當兩個運算量的值都爲"假"時,運算結果爲"假",否則爲"真"。
同假爲假,一真爲真
3) ! :當運算量的值爲"真"時,運算結果爲"假";當運算量的值爲"假"時,運算結果爲"真"。
真真假假,真假互換
位運算
與(&)運算
在與運算中兩個開關是串聯的,如果我們要開燈,需要兩個開關都打開燈纔會打開。
理解爲A與B都打開,則開燈,所以是1&1=1
任意一個開關沒打開,都不開燈,所以其他運算都是0
0&0=0,0&1=0,1&0=0,1&1=1
通俗理解爲A(與)&B都開則開,否則關
非(~)運算
非運算即取反運算,在二進制中1變0,0變1
110101進行非運算後爲
001010即1010
或(|)運算
在或運算中兩個開關是並聯的,即一個開關開,則燈開。
如果任意一個開關開了,燈都會亮。
只有當兩個開關都是關的,燈纔不開。
理解爲A(或)|B任意開則開
0|0=0,0|1=1,1|0=1,1|1=1
異或(^)運算
異或運算通俗地講就是一句話
同爲假,異爲真
所以它是這樣的算法:
0^0=0,0^1=1,1^0=1,1^1=0
參考博客:
- https://blog.csdn.net/weixin_42916705/article/details/102678694
- https://blog.csdn.net/BC_COM/article/details/89813397