Arduino 中的按位 XOR

arduinoarduino boardsarduino idearduino programming language

与其他按位运算符一样,按位 XOR 也分别应用于相应位。

运算符为 ^,语法为,

a ^ b

其中 a 和 b 是要进行 XOR 的两个数字。

XOR 的真值表如下所示 −

PQP^Q
000
011
101
110

如您所见,仅当两个位不同时,XOR 运算符才会返回 1。

如果您执行 10 ^ 3,这是在位级别发生的计算(假设您的板使用 16 位表示整数)

0000000000001010
10
0000000000000011
3
0000000000001001
10 ^ 3 = 9

示例

让我们在串行监视器上验证这一点。代码如下 −

void setup() {
   // 将您的设置代码放在此处,运行一次:
   Serial.begin(9600);
   Serial.println();

   int a = 10;
   int b = 3;
   Serial.println(a ^ b);
}

void loop() {
   // 将您的主代码放在此处,以便重复运行:
}

输出

串行监视器输出如下所示 −

如您所见,输出完全符合预期。


相关文章