Delphi-PRAXiS

Delphi-PRAXiS (https://www.delphipraxis.net/forum.php)
-   Object-Pascal / Delphi-Language (https://www.delphipraxis.net/32-object-pascal-delphi-language/)
-   -   Delphi was ist xor? (https://www.delphipraxis.net/19340-ist-xor.html)

gekmihesg 1. Apr 2004 12:50


was ist xor?
 
ich will eigendlich nur wissen was xor heißt. hab in der delphihilfe geschaut aber da steht nicht viel.
am besten gleich an dem beispiel hier erklärt:

Delphi-Quellcode:
function verschl(st,schl:string):string;
var
  x,y,lg : integer;
begin
  if length(st)>0 then
    begin
      y:=1;
      lg:=length(schl);
      for x:=1 to length(st) do
        begin
          st[x]:=chr(ord(st[x]) xor ord(schl[y]));
          if y=lg then
            y:=1
          else
            inc(y);
        end;
    end;
  result:=st;
end;
achja ich weis übrigens das es ein bitweise operator is ich weis bloß nicht was die machen.

runger 1. Apr 2004 12:56

Re: was ist xor?
 
Hallo
das ist ein exklusives Oder.
Wenn der Ausgang log 1 sein soll, so muss einer der beider Eingänge auf log 1 gesetzt sein, aber nicht beide.
Für ein Gatter mit zwei Eingängen.

Rainer

Phoenix 1. Apr 2004 12:56

Re: was ist xor?
 
xor ist ein exklusives Oder.

Bitweise wird also ein Interger mit dem anderen verglichen.

Beispiel:
Code:
     11000110
xor 01010010
=============
     10010100
Bzw. hier die Ergebnistabelle zum ganz klar machen:
Code:
0  or 0 = 0
0  or 1 = 1
1  or 0 = 1
1  or 1 = 1

0 xor 0 = 0
0 xor 1 = 1
1 xor 0 = 1
1 xor 1 = 0

sakura 1. Apr 2004 12:56

Re: was ist xor?
 
XOR ist ein "Exklusives logisches Oder"

Die Binärtabelle

Code:
Erstes Bit    1     1     0     0
Zweites Bit   1     0     1     0
   AND     ========================
               1     0     0     0

Erstes Bit    1     1     0     0
Zweites Bit   1     0     1     0
   OR      ========================
               [color=#ff0000]1[/color]    1     1     0

Erstes Bit    1     1     0     0
Zweites Bit   1     0     1     0
   XOR     ========================
               [color=#ff0000]0[/color]    1     1     0
...:cat:..,.

Pseudemys Nelsoni 1. Apr 2004 12:57

Re: was ist xor?
 
OR:

TRUE:TRUE = TRUE
TRUE:FALSE = TRUE
FALSE:TRUE = TRUE
FALSE:FALSE = FALSE

XOR:

TRUE:TRUE = FALSE
TRUE:FALSE = TRUE
FALSE:TRUE = TRUE
FALSE:FALSE = FALSE

gekmihesg 1. Apr 2004 13:20

Re: was ist xor?
 
danke ich glaub ich verstehs einigermaßen :?

gekmihesg 1. Apr 2004 13:54

Re: was ist xor?
 
ok gleich mal auf des beispiel angewandt:
st[x]:=chr(ord(st[x]) xor ord(schl[y]));
vergleicht die zwei zahlen und gibt mir dann die passende aus.
allerdings wenn die zahle zufällig übereinstimmen gibt er mir null zurück oder?

Sharky 1. Apr 2004 14:00

Re: was ist xor?
 
Hai gekmihesg,

der Code macht nichts anderes als den String st mit dem "Schlüssel-String" schl
mittels XOR "zu verschlüsseln". Das prizip ist dabei das eine XOR Operation umkehrbar ist.
Wenn Du also den "verschlüsselten" String noch einmal an die Funktion übergibst hast Du wieder den ursprünglichen String.


Alle Zeitangaben in WEZ +1. Es ist jetzt 02:40 Uhr.

Powered by vBulletin® Copyright ©2000 - 2024, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024 by Thomas Breitkreuz