# There are three binary operators
# &
# Ampersand works by checking if the two bits are both 1, then it is 1
# otherwise, it is 0
print(10 & 20)
# 01010
# 10100
# -----
# 00000
# Base 10: 0
# |
# Pipe works by checking if one or both of the two bits is 1, then it is 1
# otherwise it is 0
print(10 | 20)
# 01010
# 10100
# -----
# 11110
# Base 10: 30
# ~
# Tilde works by inverting each bit, so 0 becomes 1 and 1 becomes 0
print(~10)
# 01010 - First bit is negative, 0 = positive, 1 = negative
# -----
# 10101
# Base 10: -9