Побитовые операции. Двоичное представление числа
Вводятся два числа в двоичной системе счисления. Требуется выполнить над ними побитовые операции И
, ИЛИ
, исключающее ИЛИ
. Вывести результат операций в двоичном представлении. Решение задачи на языке программирования Python.
Побитовые операции выполняются над разрядами числа. Так если имеем двоичные числа 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