XOR用法

异或的常见用法; XOR用法 一、运算真值表: 0 ^ 0 = 0 0 ^ 1 = 1 1 ^ 0 = 1 1 ^ 1 = 0 二、运算定理: 一个值与自身的运算,总是为 false。 x ^ x = 0 一个值与 0 的运算,总是等于其本身。 x ^ 0 = x 可交换性 x ^ y = y ^ x 结合性 x ^ (y ^ z) = (x ^ y) ^ z 三、应用: 1、简化运算; 多个值的异或运算,可以根据运算定律进行简化。 a ^ b ^ c ^ a ^ b = a ^ a ^ b ^ b ^ c = 0 ^ 0 ^ c = c 2、交换值; 两个变量连续进行三次异或运算,可以互相交换值。 假设两个变量是x和y,各自的值是a和b。下面就是x和y进行三次异或运算,注释部分是每次运算后两个变量的值。 x = x ^ y // (a ^ b, b) y = x ^ y // (a ^ b, a ^ b ^ b) => (a ^ b, a) x = x ^ y // (a ^ b ^ a, a) => (b, a) 这是两个变量交换值的最快方法,不需要任何额外的空间。 3、加密; 异或运算可以用于加密。 第一步,明文(text)与密钥(key)进行异或运算,可以得到密文(cipherText)。 text ^ key = cipherText 第二步,密文与密钥再次进行异或运算,就可以还原成明文。 ...

August 8, 2022 · 2 min · Rancho