Einzelnen Beitrag anzeigen

Benutzerbild von Gollum
Gollum

Registriert seit: 14. Jan 2003
Ort: Boxberg
456 Beiträge
 
Delphi 10.1 Berlin Professional
 
#2

Re: Wiedereinmal XOR

  Alt 16. Nov 2006, 17:19
Hallo,

vielleicht hilft Dir das:
Delphi-Quellcode:
procedure TForm1.Button2Click(Sender: TObject);
var sl :TStringList;
    i, x:Integer;
    hex :String;
begin
  sl:=TStringList.Create();
  try
    sl.Text:='0x02 <STX>'+#13#10+
             '0x0A <CR>'+#13#10+
             '0x53 S erstes Zeichen Befehlswort'+#13#10+
             '0x54 T ...'+#13#10+
             '0x4F O ...'+#13#10+
             '0x50 P ...'+#13#10+
             '0x4D M ...'+#13#10+
             '0x4F O letztes Zeichen Befehlswort'+#13#10+
             '0x03 <ETX>'+#13#10+
             '0x30 0 <BCC1>'+#13#10+
             '0x31 1 <BCC2>'+#13#10+
             '0x37 7 <BCC3>'+#13#10+
             '0x0D <LF>';
    i:=0;
    repeat
      hex:='$'+Copy(sl.Strings[i], 3, 2);
      if (i>0) then x:=x xor StrToInt(hex)
        else x:=StrToInt(hex);
      Inc(i);
    until (Pos('<ETX>', sl.Strings[i])>0);
    x:=x xor StrToInt('$'+Copy(sl.Strings[i], 3, 2))
  finally
    sl.Free();
  end; // try
  ShowMessage(Format('%0.3d', [x]));
end;
  Mit Zitat antworten Zitat