(A XOR B) 和 (!A XOR !B) 不一样吗?
Is not(A XOR B) the same as (!A XOR !B)?
我想知道 !(A xor B) 是否等于 (!A xor !B)?
我正在努力理解这个问题背后的逻辑。
不,他们不是。
A xor B
等于 1
当且仅当 A
或 B
之一是 1
但不是两者都是。因此 !(A xor B)
等于 1
当且仅当 A
和 B
都相等。
而对于 (!A xor !B)
,您首先翻转位,然后执行 XOR。所以 (!A xor !B) = (A xor B)
.
这是第一个 table 的真相:
A | B | A xor B | !(A xor B)
============================
0 | 0 | 0 | 1
0 | 1 | 1 | 0
1 | 0 | 1 | 0
1 | 1 | 0 | 1
第二个:
A | B | !A | !B | (!A xor !B)
=============================
0 | 0 | 1 | 1 | 0
0 | 1 | 1 | 0 | 1
1 | 0 | 0 | 1 | 1
1 | 1 | 0 | 0 | 0
如有疑问,请使用真值表。 A 和 B 可以是 1 或 0 所以:
A xor B:
0 1
1 0
! (A xor B)
1 0
0 1
! A xor ! B:
0 1
1 0
所以,答案是否定的。它们似乎与初始异或相同。
逐步查看结果列,我们发现它们不会基于相同的输入产生相同的输出。
A
B
A XOR B
not(A XOR B)
0
0
0
1
0
1
1
0
1
0
1
0
1
1
0
1
A
B
!A
!B
(!A XOR !B)
0
0
1
1
0
0
1
1
0
1
1
0
0
1
1
1
1
0
0
0
他们不相等。您可以查看以下 table 以获得进一步的解释。
+---+---+-------+--------+----+----+-------+
| A | B | (A^B) | !(A^B) | !A | !B | !A^!B |
+---+---+-------+--------+----+----+-------+
| 0 | 0 | 0 | 1 | 1 | 1 | 0 |
| 0 | 1 | 1 | 0 | 1 | 0 | 1 |
| 1 | 0 | 1 | 0 | 0 | 1 | 1 |
| 1 | 1 | 0 | 1 | 0 | 0 | 0 |
+---+---+-------+--------+----+----+-------+
编辑:计算 !(A^B)
而不对 A、B、A' 和 B' 使用 NOT 运算
XOR(A, B) = OR(AND(A, B'), AND(A', B))
使用 DeMorgan 计算上述等式后:
NOT XOR(A,B) = AND(OR(A', B), OR(A, B'))
我想知道 !(A xor B) 是否等于 (!A xor !B)? 我正在努力理解这个问题背后的逻辑。
不,他们不是。
A xor B
等于 1
当且仅当 A
或 B
之一是 1
但不是两者都是。因此 !(A xor B)
等于 1
当且仅当 A
和 B
都相等。
而对于 (!A xor !B)
,您首先翻转位,然后执行 XOR。所以 (!A xor !B) = (A xor B)
.
这是第一个 table 的真相:
A | B | A xor B | !(A xor B)
============================
0 | 0 | 0 | 1
0 | 1 | 1 | 0
1 | 0 | 1 | 0
1 | 1 | 0 | 1
第二个:
A | B | !A | !B | (!A xor !B)
=============================
0 | 0 | 1 | 1 | 0
0 | 1 | 1 | 0 | 1
1 | 0 | 0 | 1 | 1
1 | 1 | 0 | 0 | 0
如有疑问,请使用真值表。 A 和 B 可以是 1 或 0 所以:
A xor B:
0 1
1 0
! (A xor B)
1 0
0 1
! A xor ! B:
0 1
1 0
所以,答案是否定的。它们似乎与初始异或相同。
逐步查看结果列,我们发现它们不会基于相同的输入产生相同的输出。
A | B | A XOR B | not(A XOR B) |
---|---|---|---|
0 | 0 | 0 | 1 |
0 | 1 | 1 | 0 |
1 | 0 | 1 | 0 |
1 | 1 | 0 | 1 |
A | B | !A | !B | (!A XOR !B) |
---|---|---|---|---|
0 | 0 | 1 | 1 | 0 |
0 | 1 | 1 | 0 | 1 |
1 | 0 | 0 | 1 | 1 |
1 | 1 | 0 | 0 | 0 |
他们不相等。您可以查看以下 table 以获得进一步的解释。
+---+---+-------+--------+----+----+-------+
| A | B | (A^B) | !(A^B) | !A | !B | !A^!B |
+---+---+-------+--------+----+----+-------+
| 0 | 0 | 0 | 1 | 1 | 1 | 0 |
| 0 | 1 | 1 | 0 | 1 | 0 | 1 |
| 1 | 0 | 1 | 0 | 0 | 1 | 1 |
| 1 | 1 | 0 | 1 | 0 | 0 | 0 |
+---+---+-------+--------+----+----+-------+
编辑:计算 !(A^B)
而不对 A、B、A' 和 B' 使用 NOT 运算
XOR(A, B) = OR(AND(A, B'), AND(A', B))
使用 DeMorgan 计算上述等式后:
NOT XOR(A,B) = AND(OR(A', B), OR(A, B'))