例如,假设我有x XOR y = y XOR x = z
. 有可能有类似的东西a XOR b = z
吗?
问问题
9579 次
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 回答