Thema: Delphi HexToInt optimieren

Einzelnen Beitrag anzeigen

Benutzerbild von jfheins
jfheins

Registriert seit: 10. Jun 2004
Ort: Garching (TUM)
4.579 Beiträge
 
#2

Re: HexToInt optimieren

  Alt 24. Apr 2010, 17:12
Hmmm ... Ideen:
Du könntest das *16 durch shl 4 ersetzen - weis nicht ob das vll. automatisch passiert, aber naja.
Außerdem könntest du ein Array machen, in dem du direkt nachguckst. Lookup-Tabelle quasi.
Und statt inc() könntest du auch ein bitweises or nehmen.

Also sowas:
Delphi-Quellcode:
function HexToInt2(const S: string): Cardinal;
var
  I: Byte;
const
  Arr: Array[AnsiChar] = ....; // Vorher belegen mit den passenden Werten
begin
  Result := 0;
  for I := 1 to Length(S) do
    Result := (Result shl 4) or Arr[AnsiChar(S[I])];
end;
  Mit Zitat antworten Zitat