роботы
электроника
программирование

ПОБИТОВЫЕ ОПЕРАТОРЫ В PYTHON (поразрядная конъюнкция и другие)

Побитовые операторы

Побитовые операторы работают с данными в битовом (двоичном) формате и действуют бит за битом.

Всего этих операторов шесть:
&побитовое И (побитовое умножение, поразрядная конъюнкция)
|побитовое ИЛИ (побитовое сложение, поразрядная дизъюнкция)
^побитовое исключающее ИЛИ (побитовая сумма по модулю два, XOR)
~побитовое НЕ (побитовая инверсия, поразрядная инверсия)
<<побитовый сдвиг влево
>>побитовый сдвиг вправо

Битовые операции используются в криптографических алгоритмах, сетевых технологиях и др.

Побитовое И (поразрядная конъюнкция)

Пример с поразрядной конъюнкцией:
>>> 10 & 6
2
>>> 
Число 10 в двоичной системе — 1010, а число 6 — 110.
После поразрядного перемножения получим 0010. В десятичной системе это 2.

101010
60110
20010

Побитовое ИЛИ (поразрядная дизъюнкция)

Пример с поразрядной дизъюнкцией:
>>> 10 & 6
14
>>> 
Число 10 в двоичной системе — 1010, а число 6 — 110.
После поразрядного сложения получим 1110. В десятичной системе это 14.

101010
60110
141110

Побитовое исключающее ИЛИ (XOR)

Принцип поразрядного исключающего ИЛИ

0 + 0 = 0
0 + 1 = 1
1 + 0 = 1
1 + 1 = 0

Пример с поразрядным исключающим ИЛИ:
>>> 10 ^ 6
12
>>> 
Число 10 в двоичной системе — 1010, а число 6 — 110.
После поразрядного сложения по модулю два получим 1100. В десятичной системе это 12.

101010
60110
121100

Побитовое НЕ

Положительные числа преобразуются в отрицательные со сдвигом на единицу, и наоборот.

~x = -(x + 1)


Пример с поразрядным НЕ:
>>> ~10
-11
>>> 
Еще пример с поразрядным НЕ:
>>> ~-10
9
>>> 

Побитовый сдвиг влево

Позволяет сдвинуть битовое представление числа на несколько разрядов влево. Операции сдвига применяются только к целым числам.

Пример сдвига влево на 2 разряда:
>>> 10 << 2
40
>>> 
Число 10 в двоичной системе — 1010.
После поразрядного сдвига влево на два разряда получим 101000 (справа добавится два разряда с нулями). В десятичной системе это 40.

Побитовый сдвиг вправо

Позволяет сдвинуть битовое представление числа на несколько разрядов вправо. Операции сдвига применяются только к целым числам.

Пример сдвига вправо на 2 разряда:
>>> 10 >> 2
2
>>> 
Число 10 в двоичной системе — 1010.
После поразрядного сдвига вправо на два разряда получим 10 (два правых разряда просто исчезнут). В десятичной системе это 2.



Учебник Python
Знакомство с Питоном
Операторы
Объекты


ПОПУЛЯРНОЕ НА САЙТЕ
Изучаем Python: TOP-5 лучших сайтов для изучения Питона
Изучаем Python: TOP-5 лучших сайтов для изучения Питона
Самоучитель, интерактивный учебник, наглядные задачи и примеры программ.
Как сделать простейшего робота
Как сделать простейшего робота
О том, как сделать робота в домашних условиях, используя лишь микросхему драйвера моторов и пару фотоэлементов. В зависимости от способа соединения моторов, микросхемы и фотоэлементов робот будет двигаться на свет или, наоборот, прятаться в темноту, следовать по линии или бежать за вашей рукой.




Copyright © myrobot.ru, 2005-2023


Яндекс.Метрика   Рейтинг@Mail.ru