【发布时间】:2014-01-02 18:23:45
【问题描述】:
我正在尝试编写一个异或门,我发现了这个:
return in[0] != in[1];
其中 in[0] 为真,而 in[1] 为假。我明白那个 !给出否定,但为什么使用 =?
【问题讨论】:
-
XOR 是异或——它们不能相等。
!=表示不相等。
我正在尝试编写一个异或门,我发现了这个:
return in[0] != in[1];
其中 in[0] 为真,而 in[1] 为假。我明白那个 !给出否定,但为什么使用 =?
【问题讨论】:
!= 表示不相等。
考虑真值表:
0 1 XOR
0 0 0
1 0 1
0 1 1
1 1 0
该示例有效,因为 0 等于 false 而 1 等于 true
在这两种情况下,0 != 0 是 false = 0,因为 0 确实等于 0。你可以计算出所有其他的
【讨论】:
运算符!= 表示不等于。
【讨论】:
!= 只是“不等于”运算符的字符序列。 xor 实际上是^ operator.
【讨论】:
您可以使用 OR 和 AND 运算符执行 XOR 运算符。 例如:
return (in[0] | in[1]) & !(in[0] & in[1]);
【讨论】: