"""
Задание 2. Выполнить логические побитовые операции "И", "ИЛИ"
и др. над числами 5 и 6. Выполнить
над числом 5 побитовый сдвиг вправо и влево на два знака.

Подсказка: это стандартные операции, которые осуществляются с помощью
стандартных операторов. Попробуйте найти каких именно.
"""

A = 5
print(f'{A} = {bin(A)}')
B = 6
print(f'{B} = {bin(B)}')

print(f'{A} & {B} = {A & B} ({bin(A & B)})')  # & - побитовый оператор И (AND)
print(f'{A} | {B} = {A | B} ({bin(A | B)})')  # | - побитовый оператор ИЛИ (OR)
print(f'{A} ^ {B} = {A ^ B} ({bin(A ^ B)})')  # ^ - побитовое исключающее ИЛИ (XOR)
print(f'~ {A} = {~ A} ({bin(~ A)})')  # ^ - побитовое отрицание НЕТ (NOT)
print(f'{A} << 2 = {A << 2} ({bin(A << 2)})')  # << - побитовый сдвиг влево на заданное кол. бит
print(f'{A} >> 2 = {A >> 2} ({bin(A >> 2)})')  # >> - побитовый сдвиг вправо на заданное кол. бит
