dmad

joined 1 year ago
[–] dmad@programming.dev 5 points 1 year ago* (last edited 1 year ago) (1 children)

xor has the property x ^ x = 0, and x ^ 0 = x. So, x ^ x ^ y = y

a' = a ^ b
b' = b ^ a' = b ^ (a ^ b) = a
a'' = (a ^ b) ^ a = b

This is pretty clever, I've never seen this for a swap.