Вводятся два числа в двоичной системе счисления. Требуется выполнить над ними побитовые операции И, ИЛИ и исключающее ИЛИ. Вывести результат операций в двоичном представлении.
Побитовые операции выполняются над разрядами числа. Так если имеем два числа 101 и 100, над которыми выполняется побитовая операция ИЛИ, то получим двоичное число 101:
101
100
101
В языке программирования Python побитовые операции применяются к числам, представленными в десятичной системе счисления. Знаки побитовых операций: | — ИЛИ, & — И, ^ — исключающее ИЛИ.
Функция int() всегда преобразует переданную ей строку в десятичную систему счисления. При этом вторым аргументом можно указать, в какой системе счисления содержатся данные в этой строке (двоичной, восьмеричной, шестнадцатеричной).
Функция bin(), наоборот, принимает десятичное число и возвращает строку, являющуюся представлением переданного числа в двоичном виде.
n1 = input("Первое: ")
n2 = input("Второе: ")
n1 = int(n1, 2)
n2 = int(n2, 2)
bit_or = n1 | n2
bit_and = n1 & n2
bit_xor = n1 ^ n2
print(" OR: %s" % bin(bit_or))
print("AND: %s" % bin(bit_and))
print("XOR: %s" % bin(bit_xor))
Результат:
Первое: 10100
Второе: 111
OR: 0b10111
AND: 0b100
XOR: 0b10011