I am trying to code an XOR Gate and I found this:
return in[0] != in[1];
where in[0] is for example true and in[1] is false. I understand that ! gives the negation but why is = used?
Consider the truth table:
0 1 XOR
0 0 0
1 0 1
0 1 1
1 1 0
The example works because 0 is equal to false
and 1 is equal to true
In both cases, 0 != 0
is false
= 0, since 0 does equal 0. You can work out all other
!=
is just the character sequence for the "not equal" operator. xor is actually ^
operator.
运算符的!=
意思不等于。
您可以使用 OR 和 AND 运算符执行XOR运算符。例如:
return (in[0] | in[1]) & !(in[0] & in[1]);