Ich hab ne function die jedes Zahlensystem ins andere Rechnen kann (warum sollte man auch für jede umrechnung eine function schreiben?):
Delphi-Quellcode:
function BaseToBase(Value: string; StartBase, EndBase: byte): string;
const Digits = '0123456789ABCDEFGHIJKLMNOPQRSTUVWXYZ';
var i: Integer; dez, j: Int64;
begin
Result:='';
if (StartBase<2) or (StartBase>36) or
(EndBase<2) or (EndBase>36) then Exit;
for i:=1 to Length(Value) do begin
j:=Pos(Value[i], Digits);
if (j>StartBase) or (j=0) then Exit;
end;
j:=1;
dez:=0;
for i:=Length(Value) downto 1 do begin
dez:=dez + (Pos(Value[i], Digits)-1) * j;
j:=j*StartBase;
end;
repeat
Result:=Digits[dez mod EndBase+1] + Result;
dez:=dez div EndBase;
until dez=0;
end;
Beispiele:
Delphi-Quellcode:
ShowMessage(BaseToBase('101010', 2, 16)); // umrechnung von Binär in Hex
ShowMessage(BaseToBase('12345', 10, 8)); // umrechnung von Dezimal in Oct
mfg