Подтвердить что ты не робот

Что делает оператор ^ (XOR)?

Какую математическую операцию выполняет XOR?

4b9b3361

Ответ 1

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

Это его таблица функций:

a | b | a ^ b
--|---|------
0 | 0 | 0
0 | 1 | 1
1 | 0 | 1
1 | 1 | 0

Эта операция выполняется между каждыми двумя соответствующими битами числа.

Пример: 7 ^ 10
В двоичном формате: 0111 ^ 1010

  0111
^ 1010
======
  1101 = 13

Свойства: Операция является коммутативной, ассоциативной и самообратной.

Это тоже то же самое, что и сложение по модулю 2.

Ответ 2

^ является побитовым XOR-оператором Python. Это то, как вы пишете XOR в python:

>>> 0 ^ 0
0
>>> 0 ^ 1
1
>>> 1 ^ 0
1
>>> 1 ^ 1
0

XOR обозначает исключительное ИЛИ. Он используется в криптографии, потому что он позволяет вам "переворачивать" биты с использованием маски в обратимой операции:

>>> 10 ^ 5
15
>>> 15 ^ 5
10

где 5 - маска; (входная маска XOR) Маска XOR снова дает вам вход.