5

例如,假设我有x XOR y = y XOR x = z. 有可能有类似的东西a XOR b = z吗?

4

4 回答 4

10

简短的回答:是的

长答案:XOR 是一种二元运算,它适用于各个位并且是可交换的。

它有真值表:

A B  Q
0 0  0
0 1  1
1 0  1
1 1  0

由于数字由这些​​位组成,因此只要每个位位置的两个位具有相同的结果,结果就会相同。例如取 2 个八位数字 113 和 42

113 = 01110001
42  = 00101010
XOR = 01011011 = 91

但是如果我交换左边的第四位,我会得到

97  = 01100001
58  = 00111010
XOR = 01011011 = 91

所以又是的...

于 2010-03-20T02:05:09.497 回答
5

是的。

z = y因为x ^ y ^ x = y

所以完全可以组合a ^ b = y = z

事实上,对于每一个都a存在b这样一个a ^ b = z。要计算,b = z ^ a

请注意XOR 是可交换的:这意味着x ^ y= y ^ x

于 2010-03-20T01:55:07.627 回答
4

是的。作为一个简并证明,将一个数字与自身进行异或运算总是得到 0。

于 2010-03-20T01:53:03.443 回答
0

XOR,如果两个参数不同,将返回 true,假设参数无论如何都是布尔值。这与 or 不同,如果其中一个参数为 true,它将返回 true,而 NOR 仅当它们都为 false 时才返回 true。

于 2010-03-20T01:54:14.353 回答