Registriert seit: 10. Feb 2005
17 Beiträge
|
Re: Universale ToHex und FromHex procedure/function
6. Mär 2007, 09:56
Ach so einfach kann man das lösen.
Ich hab es vor Wochen wesentlich aufwendiger gemacht, aber sieht dafür schöner aus.
Delphi-Quellcode:
function TMainForm.HexBauen(TS : TStream) : String;
var S : String;
i,j : integer;
c : String;
Mybyte, MybyteL : byte;
TSS : TStringStream;
begin
TSS := TStringStream.create(' ');
TSS.CopyFrom(TS,TS.Size);
TSS.Seek(0,0);
Result := ' ';
j := 1;
setlength(S, TS.Size*2);
c := TSS.ReadString(TS.Size);
for i := 1 to TSS.Size do begin
Mybyte := Byte(c[i]);
asm
mov al,Mybyte
mov ah,al
and al,00001111b
and ah,11110000b
cmp al,00001001b
jg @m1
add al,48d
jmp @m2
@m1: add al,55d
@m2: shr ah,4
cmp ah,00001001b
jg @m3
add ah,48d
jmp @ende
@m3: add ah,55d
@ende: mov MyByteL,al
mov MyByte,ah
end;
S[j] := char(MyByte);
inc(j);
S[j] := Char(MyByteL);
inc(j);
end;
Result := S;
end;
Also viele Weg führen nach Rom.
icewing
J. Renner
|
|
Zitat
|