Autor Beitrag
Cruiser23
ontopic starontopic starontopic starontopic starontopic starontopic starontopic starhalf ontopic star
Beiträge: 191

WinXP
D7 Prof.
BeitragVerfasst: Mi 04.08.04 02:48 
Hi,

habe herausgefunden, das xor eine Exklisiv-Oder irgendwas ist und da hörts dann auch schon auf.

Mich würde interessieren, ob es dahinter ne Formel gibt, und wie die aussieht. Brauche es nicht zur verschlüsselung sondern für meine C-Control. Gibt da so ne Relaisplatine die man über Comport mittels 4stelligem code steuert, 3 befehle und eine Prüfsumme, diese summe erechnet sich mittels xor aus den ersten 3 zahlen.

_________________
Du steckst immer in der Sch****, das einzige, was sich ändert, ist die Tiefe!
inselberg
ontopic starontopic starontopic starontopic starontopic starontopic starontopic starofftopic star
Beiträge: 458



BeitragVerfasst: Mi 04.08.04 08:05 

_________________
hans bist du das ?
Udontknow
ontopic starontopic starontopic starontopic starontopic starontopic starontopic starhalf ontopic star
Beiträge: 2596

Win7
D2006 WIN32, .NET (C#)
BeitragVerfasst: Mi 04.08.04 08:31 
Na, ob so eine Uni-Klamotte der beste Weg ist, das zu erklären. :roll:

Ein Term mit XOR ergibt als Ergebnis True wenn eine von beiden Bedingungen (nicht jedoch beide gleichzeitig) erfüllt ist.

Für A XOR B könnte man auch schreiben

ausblenden Delphi-Quelltext
1:
2:
3:
4:
5:
6:
7:
8:
function MyXOR(A,B:Boolean):Boolean;
begin
 if (A=True) AND (B=False) 
 or (A=False) AND (B=True) then 
   Result:=True
 else 
   Result:=False;
end;


Oder verkürzt:

ausblenden Delphi-Quelltext
1:
Result:= (A=True) AND (B=False) or (A=False) AND (B=True);					

Oder stärker verkürzt

ausblenden Delphi-Quelltext
1:
Result:= (A) AND (not B) or (not A) AND (B);					


oder eben am effektivsten:

ausblenden Delphi-Quelltext
1:
Result:=A Xor B;					


Xor lässt sich nicht nur auf Boolean-Variablen anwenden, sondern auch auf Integertypen, bei denen dann jeweils die einzelnen Bits miteinander verglichern werden (das niederwertigste Bit von A mit dem niederwertigsten von B usw.).

PS: Im Endeffekt ist die Operation mit Boolean-Werten nichts anderes. Der Boolsche Wert True entspricht einem Binärwert von 00000001, während False dementsprechend 00000000 ist .

Cu,
Udontknow
Cruiser23 Threadstarter
ontopic starontopic starontopic starontopic starontopic starontopic starontopic starhalf ontopic star
Beiträge: 191

WinXP
D7 Prof.
BeitragVerfasst: Mi 04.08.04 22:03 
Schanke dön werds mir gleich in Ruhe ansehen cu

_________________
Du steckst immer in der Sch****, das einzige, was sich ändert, ist die Tiefe!
DaRkFiRe
ontopic starontopic starontopic starontopic starontopic starontopic starofftopic starofftopic star
Beiträge: 526

WinXP Home & Professional
C, C++, Delphi
BeitragVerfasst: Do 05.08.04 05:31 
XOR ist das Exklusivoder - es heißt, entweder ist das erste 1 oder das zweite, sonst 0.

Das Ergebnis einer XOR-Verknüpfung von A und B A,B ist {0,1} ist immer dann 1, wenn A ungleich B. Also für

R=Ergebnis A und B sind Belegungen (0 oder 1)

A=0 B=0 R=0
A=0 B=1 R=1
A=1 B=0 R=1
A=1 B=1 R=0

_________________
Lang ist der Weg durch Lehren - kurz und wirksam durch Beispiele! Seneca