Hallo!
Ich habe folgende Funktion um eine große Zahl mit Hilfe der
Ascii-Tabelle "einzupacken" und somit zu komprimieren.
Delphi-Quellcode:
const base=255;
var chtab:array[0..base-1] of char;
procedure initchtab;
var i,j:byte;
begin
j:=0;
for i := 0 to 255 do
if i<>10 then
begin
chtab[j]:=chr(i);
inc(j);
end;
end;
function cvbase(n:int64): string;
begin
Result := '';
while n > 0 do
begin
Result := chtab[n mod base] + Result;
n := n div base;
end;
end;
Also wir Ihr seht sollen zum "einpacken" alle Zeichen außer das Zeilenumbruchzeichen (#10 = LF) benutzt werden.
Die Funktion
initchtab, zum Initialisieren der Zeichentabelle, wird nur einmal beim Start aufgerufen.
Die Funktion
cvbase dagegen wird sehr oft aufgerufen und deshalb wollte ich mal fragen, ob jemand eine Möglichkeit sieht wie ich diese Funktion noch optimieren/beschleunigen könnte?