/*
X Y | X ^ Y
0 0 | 0
0 1 | 1
1 0 | 1
1 1 | 0
*/
object XORBits extends App {
def printBits(n: Int): Unit = {
println(String.format("%8s", Integer.toBinaryString(n)).replace(' ', '0'))
}
val cases = Seq((5, 5), (7, 0), (0, 6), (0, 0))
for ((x, y) <- cases) {
printBits(x)
println("^")
printBits(y)
println("=")
printBits(x ^ y)
println("\n")
}
}
/*
run:
00000101
^
00000101
=
00000000
00000111
^
00000000
=
00000111
00000000
^
00000110
=
00000110
00000000
^
00000000
=
00000000
*/