HAllo zusammen,
kann mir jemand von Euch meinen Denkfehler ausmerzen?
Ich soll 2 Strings mit XOR verknüpfen und das Ergebnis als binär ausgeben.
Meine Lösung:
Ergebnis:
ABER:
In einer anderen Aufgabe, heißt es, XOR vergleicht 2 Werte bitweise zB:
10100100 ^ 00100101 = 10000001
Das Ergebnis resultiert daher, weil
Warum ist dann aber mein obiges "Ergebnis in binär" so völlig unterschiedlich, als wenn ich auch dort jedes Zeichen von Wert1 und Wert2 vergleiche.
Irgendwie steh ich da grad so richtig auf dem Schlauch und hab nen fetten Denkfehler. Würde mich über Tipps freuen. Ich hoffe meine Frage kann jemand nachvollziehen :bloed:
LG
kann mir jemand von Euch meinen Denkfehler ausmerzen?
Ich soll 2 Strings mit XOR verknüpfen und das Ergebnis als binär ausgeben.
Meine Lösung:
Java:
int zahl1 = 1234567;
int zahl2 = 9876543;
System.out.println("Wert1 = " + zahl1 + "- Entspricht: " + Integer.toBinaryString(zahl1));
System.out.println("Wert2 = " + zahl2 + "- Entspricht: " + Integer.toBinaryString(zahl2));
System.out.println("Ergebnis als Zahl: " + (zahl1 ^ zahl2) + "\nErgebnis in binär: "+ (Integer.toBinaryString(zahl1 ^ zahl2)));
Code:
Wert1 = 1234567- Entspricht: 100101101011010000111
Wert2 = 9876543- Entspricht: 100101101011010000111111
Ergebnis als Zahl: 8676024
Ergebnis in binär: 100001000110001010111000
ABER:
In einer anderen Aufgabe, heißt es, XOR vergleicht 2 Werte bitweise zB:
10100100 ^ 00100101 = 10000001
Das Ergebnis resultiert daher, weil
Code:
1 != 0 -> 1
0 == 0 -> 0
1 == 1 -> 0
0 == 0 -> 0
0 == 0 -> 0
1 == 1 -> 0
0 == 0 -> 0
0 != 1 -> 1
Warum ist dann aber mein obiges "Ergebnis in binär" so völlig unterschiedlich, als wenn ich auch dort jedes Zeichen von Wert1 und Wert2 vergleiche.
Irgendwie steh ich da grad so richtig auf dem Schlauch und hab nen fetten Denkfehler. Würde mich über Tipps freuen. Ich hoffe meine Frage kann jemand nachvollziehen :bloed:
LG