逻辑运算

🔑 核心比喻:把二进制位当成 “开关”

  • 1 = 灯亮(开)
  • 0 = 灯灭(关)

1️⃣ & 与运算(AND)

规则:两个开关 必须同时开,灯才亮。
口诀“同1才1,否则0”

开关A 开关B 结果(灯)
1 1 1 ✅
1 0 0 ❌
0 1 0 ❌
0 0 0 ❌

例子

     12 二进制:1100  
   & 10 二进制:1010  
结果  1000  → 8  

生活类比
🔑 两把钥匙一起插才能开门,缺一把都打不开。


2️⃣ | 或运算(OR)

规则:两个开关 只要有一个开,灯就亮。
口诀“遇1则1”

开关A 开关B 结果(灯)
1 1 1 ✅
1 0 1 ✅
0 1 1 ✅
0 0 0 ❌

例子

  12 二进制:1100  
| 10 二进制:1010  
结果        1110  → 14  

生活类比
🚪 两把钥匙任一把都能开门,不挑。


3️⃣ ^ 异或运算(XOR)

规则:两个开关 状态不同(一亮一灭),灯才亮。
口诀“不同为1,相同为0”

开关A 开关B 结果(灯)
1 1 0 ❌(相同)
1 0 1 ✅(不同)
0 1 1 ✅(不同)
0 0 0 ❌(相同)

例子

  12 二进制:1100  
^ 10 二进制:1010  
结果        0110  → 6  

生活类比
💡 一男一女才能配对成功,同性不行。


4️⃣ ~ 取反运算(NOT)

规则单个开关翻转状态(开变关,关变开)。
口诀“0变1,1变0”

例子

~12(二进制1100) → 0011 → 3  

注意:实际计算机会用 补码 表示负数,所以 ~12 结果是 -13(不用纠结,记住“翻转”即可)。


🎯 终极记忆法

  • AND(&)“都要”(严格)
  • OR(|)“随便”(宽松)
  • XOR(^)“挑不同”(叛逆)
  • NOT(~)“反着来”(叛逆²)

🧠 小测试

  1. 7 & 3 = ?
    7=0111, 3=0011 → 结果 0011 = 3
  2. 5 | 9 = ?
    5=0101, 9=1001 → 结果 1101 = 13
  3. 6 ^ 3 = ?
    6=0110, 3=0011 → 结果 0101 = 5

现在,把每一对开关代入口诀,秒算!

posted @ 2025-07-21 16:56  有一个果园  阅读(84)  评论(0)    收藏  举报