2013-01-11 7 views
38

Es gibt Funktion XOR in Java - a^bWas ist eine inverse Funktion zu XOR?

Für exemple: 5^3 = 6

Können Sie mir sagen inverse Funktion? Wenn ich 6 und 3 habe, kann ich Bereich der Zahlen erhalten, die Nr. 5 einschließen?

Antwort

95

Die Umkehrung ist XOR!

Wenn Sie:

c = a^b; 

können Sie erhalten a oder b zurück, wenn Sie den anderen Wert haben zur Verfügung:

a = c^b; // or b^c (order is not important) 
b = c^a; // or a^c 

Zum Beispiel, wenn a = 5, b = 3 (und damit c = 6 wie Sie erwähnt) Sie erhalten:

b=0011 (3)   a=0101 (5) 
c=0110 (6) XOR or c=0110 (6) XOR 
----------   ---------- 
a=0101 (5)   b=0011 (3) 
+16

Alter ... dieser ROX! – Gazzini

25

Das Inverse von XOR ist XOR .....

+7

... Ist das nicht der Punkt? –

Verwandte Themen