2

我这样计算:

117^196 

我得到:

177

现在我想做的是让 117 回来,所以我需要做一个替换

(replace)^196 = 117

与 xor 运算符相反的操作是什么?

4

3 回答 3

4

xor 的反义词是 xor :)。如果你两次异或某事(a^b)^b == a

这相对容易展示。对于每一位:

1 ^ 1 = 0
1 ^ 0 = 1
0 ^ 1 = 1
0 ^ 0 = 0

对任何一对数字执行此操作ab很容易看出

a^b异或异ab产生另一个(异或a产生b,反之亦然)

1 2 过滤结果
0^0^0 = 0
0^1^0 = 1
0^1^1 = 0
1^0^0 = 1
1^0^1 = 0
1^1^1 = 1
于 2013-03-04T08:05:58.820 回答
0

这只是xor它自己。

like+的对立面是-

xor的对立面是xor

于 2013-03-04T08:06:38.643 回答
0

只需使用您得到的结果:177

117 ^ 196        = 177         | () ^ 196
117 ^ 196 ^ 196  = 177 ^ 196   | self-inverse
117 ^ 0          = 177 ^ 196   | neutral element
117              = 177 ^ 196

XOR 具有三个重要的属性。这是

  • 联想
  • 可交换的
  • 自逆

这意味着一个值是它自己的倒数:

a^a = 0

由于它也是可交换的和关联的,因此您可以重新排列和异或表达式,其中包含相同操作数的事件数量,如下所示:

a^O^b^c^O^d = O^O^a^b^c^d = 0^a^b^c^d = a^b^c^d

您可以说出现偶数时间的操作数“相互抵消”。

于 2013-03-04T10:16:31.953 回答