Xor

Szczawik

Xor - operator logiczny.

Operator xor - alternatywa wykluczająca (w jezyku C "^"). Zastosowaniem jest negacja wybranych bitów lub wykrywanie różnicy bitów na tych samych pozycjach. Xor jest operatorem dwuargumentowym. W wyniku zwracany jest argument pierwszy, w którym zanegowane zostały bity na pozycjach, na których w drugim argumencie są bity ustawione.

Tabela prawdy operacji xor:

A  B  |  Y
------+---
0  0  |  0
0  1  |  1
1  0  |  1
1  1  |  0

Operacja logiczna alternatywy wykluczającej posiada następujące cechy:

  • jest przemienna - kolejność argumentów nie ma znaczenia:

    x xor y = y xor x
  • jest przechodnia - kolejność trzech argumentów dwóch kolejnych operacji nie ma znaczenia:

    x xor y xor z = y xor x xor z = z xor x xor y
  • jest swoją operacją odwrotną - podwójne zastosowanie operacji z tym samym argumentem pozwala otrzymać argument początkowy:
    x xor y xor y = x

Operację alternatywy wykluczającej można zastąpić przez operacje podstawowe:

x xor y = (x and not y) or (y and not x)

Innymi często używanymi operatorami logicznymi są:

  • And (koniunkcja, "i"),
  • Or (alternatywa, "lub"),
  • Not (negacja, "nie").
    Operatory logiczne nazywane są operatorami bulowskimi (ang. Boolean operators) z uwagi na realizację operacji własciwych dla algebry Boole'a.

3 komentarzy

Rolland: a tak po polsku?

To jest naprawde SUPER pomysla z robiem TEGO wszystkiego w nowy FAJE... PRZEJRZYSTY i poukladany sposów GRATULUJE POMYSŁU :)

Nie no profeska :)