Entwickler-Ecke

Delphi Language (Object-Pascal) / CLX - XOR Verständnisproblem


Nano-Ware - Mi 23.12.09 19:11
Titel: XOR Verständnisproblem
Hi,

ich habe jetzt in den meisten Verschlüsselungen XOR gesehn. Ich hab mir dann mal angeschaut, was das genau macht. Leider verstehe ich nur Bahnhof.

Wenn ich jetzt testweise

ShowMessage(IntToStr(5 XOR 6));

schreib kommt 3 raus... Warum???

Was macht XOR denn wirkich.


Es währe nett, wenn ihr mir das hier kindgerecht erklären könntet. Ich verstehs einfach nicht...

Lg Nano-Ware


ub60 - Mi 23.12.09 19:30

XOR auf Zahlen angewandt verknüpft beiden Zahlen bitweise mit XOR (entweder-oder bzw.: beide bit gleich, dann 0, sonst 1):


Quelltext
1:
2:
3:
5:   00000101
6:   00000110
XOR: 00000011 = 3

ub60


Oliver Marx - Mi 23.12.09 19:32

Hi,

XOR testet die Bits auf Ungleichheit und entspricht "entweder oder" (exclusive or).

Die Wahrheitstabelle ist:

a b | a XOR b
----+-----------
0 0 | 0
0 1 | 1
1 0 | 1
1 1 | 0

In deinem Beispiel:

5 = 101
6 = 110
--> 011 = 3

Oliver


Nano-Ware - Mi 23.12.09 21:38

Danke erstmal aber woher weiß ich jetzt, 5 = 00000101 ???


Delete - Mi 23.12.09 21:56

- Nachträglich durch die Entwickler-Ecke gelöscht -


FinnO - Mi 23.12.09 21:56

naja, binäres Zahlensystem... sollte eigentlich jedem Klar sein, es gibt nur 1 und 0, man zählt also

00000000 - 0
00000001 - 1
00000010 - 2
00000011 - 3
00000100 - 4
00000101 - 5
00000110 - 6
00000111 - 7
00001000 - 8
usw ;)


Nano-Ware - Do 24.12.09 00:31

Danke das hat geholfen. Und wenn ich jetzt z.B. wissen wollte was die Zahl 77 im Binären Format ist, müsste ich dann von 0 aus immer weiter nach oben gehen, oder bekommt man das auch anders raus?


jaenicke - Do 24.12.09 01:08

Ausrechnen ;-)
Die einzelnen Stellen entsprechen ja wie beim Zehnersystem bestimmten Werten.

Oder du nimmst einfach den Windows Taschenrechner. :D


dsi - Do 24.12.09 01:12

77 : 2 = 38 Rest: 1
38 : 2 = 19 Rest: 0
19 : 2 = 9 Rest: 1
9 : 2 = 4 Rest: 1
4 : 2 = 2 Rest: 0
2 : 2 = 1 Rest: 0
1 : 2 = 0 Rest: 1

Ergebnis: 1001101


Xentar - Do 24.12.09 03:01

Alternative:
Windows + R -> calc -> Ansicht -> Wissenschaft -> 77 -> F8

Das war die Kurzform ;)


Nano-Ware - Do 24.12.09 12:21

Wie geil !! Unter Windows 7 gibt sogar Ansicht -> Programmierer ^^ vielen Dank. Ihr seid einfach 10000000 mal besser als son Delphi-Treff Tut


Sylvus - Do 24.12.09 14:53

schau dir trotzdem die Grundlagen an, dann verstehst du auch, was du machst :)
Viel Spass
Sylvus

101010


alzaimar - Do 24.12.09 16:39

user profile iconXentar hat folgendes geschrieben Zum zitierten Posting springen:
Alternative:Windows + R -> calc -> Ansicht -> Wissenschaft -> 77 -> F8

:mahn: F8 ist *nicht* binär. Auch nicht am Heiligen Abend! :dunce: :wink:


SvenAbeln - Do 24.12.09 17:15

user profile iconalzaimar hat folgendes geschrieben Zum zitierten Posting springen:

:mahn: F8 ist *nicht* binär. Auch nicht am Heiligen Abend! :dunce: :wink:

Aber die Taste 'F8' schaltet den Windows Taschenrechner auf Binär um.


FinnO - Do 24.12.09 18:31

immer diese Witzverderber :P


Martin Strohal - Sa 02.01.10 17:28

user profile iconNano-Ware hat folgendes geschrieben Zum zitierten Posting springen:
Ihr seid einfach 10000000 mal besser als son Delphi-Treff Tut

Wenn deine Fragen jetzt alle geklärt sind, darfst du gerne ein Tutorial bei uns veröffentlichen, das besser ist als alles, was wir sonst haben - und das deine Fragen beantwortet hätte, wenn du es schon vorher gehabt hättest :)

Gruß, Martin