Ich möchte nur eine mathematische Erklärung hinzufügen, um die Antwort vollständiger zu machen. In der Gruppentheorie ist XOR eine abelsche Gruppe , auch kommutative Gruppe genannt. Dies bedeutet, dass es fünf Anforderungen erfüllt: Abschluss, Assoziativität, Identitätselement, Inverses Element, Kommutativität.
XOR-Swap-Formel:
a = a XOR b
b = a XOR b
a = a XOR b
Erweitern Sie die Formel, ersetzen Sie a, b durch die vorherige Formel:
a = a XOR b
b = a XOR b = (a XOR b) XOR b
a = a XOR b = (a XOR b) XOR (a XOR b) XOR b
Kommutativität bedeutet "a XOR b" gleich "b XOR a":
a = a XOR b
b = a XOR b = (a XOR b) XOR b
a = a XOR b = (a XOR b) XOR (a XOR b) XOR b
= (b XOR a) XOR (a XOR b) XOR b
Assoziativität bedeutet "(a XOR b) XOR c" gleich "a XOR (b XOR c)":
a = a XOR b
b = a XOR b = (a XOR b) XOR b
= a XOR (b XOR b)
a = a XOR b = (a XOR b) XOR (a XOR b) XOR b
= (b XOR a) XOR (a XOR b) XOR b
= b XOR (a XOR a) XOR (b XOR b)
Das inverse Element in XOR ist selbst, es bedeutet, dass jeder Wert XOR mit sich selbst Null ergibt:
a = a XOR b
b = a XOR b = (a XOR b) XOR b
= a XOR (b XOR b)
= a XOR 0
a = a XOR b = (a XOR b) XOR (a XOR b) XOR b
= (b XOR a) XOR (a XOR b) XOR b
= b XOR (a XOR a) XOR (b XOR b)
= b XOR 0 XOR 0
Das Identitätselement in XOR ist Null. Dies bedeutet, dass jeder Wert XOR mit Null unverändert bleibt:
a = a XOR b
b = a XOR b = (a XOR b) XOR b
= a XOR (b XOR b)
= a XOR 0
= a
a = a XOR b = (a XOR b) XOR (a XOR b) XOR b
= (b XOR a) XOR (a XOR b) XOR b
= b XOR (a XOR a) XOR (b XOR b)
= b XOR 0 XOR 0
= b XOR 0
= b
Weitere Informationen erhalten Sie in der Gruppentheorie .