为什么这个8位二进制(100000010)在屏蔽时使用异或运算保持不变?

Why does this 8 bit binary (100000010) stayed the same using XOR operation when masking?

如果这是错误的部分,我深表歉意。至于我的问题,我确实理解 AND 和 OR 掩码操作。我很困惑为什么 10000010 具有与原始值相同的掩码值?我们被要求切换位 1 和 7。如果我理解 XOR 正确,我会切换 1 到 0 和 0 到 1。为什么 10000010 的掩码不是 00000000?我很感激关于这个问题的任何有用的解释。

我有一个 class 异步的,所以在 class 时间问我的教授是不可能的。我已经给我的教授发了邮件,但他已经几个小时没有回复了。

XOR 是一个接受 2 个输入并应用“异或”(XOR) 的函数,这意味着仅当输入不同时它才等于 1

0 XOR 0 = 0
0 XOR 1 = 1
1 XOR 0 = 1
1 XOR 1 = 0

这意味着您有:

10000010 XOR 00000000 = 10000010

如果你想得到00000000,你应该去:

10000010 XOR 10000010 = 00000000