BYTE 转字符串
procedure TForm3.FormCreate(Sender: TObject);
begin
Self.Paint;
end;
function ByteToHex(Src: Byte): String;
begin
SetLength(Result, 2);
asm
MOV EDI, [Result]
MOV EDI, [EDI]
MOV AL, Src
MOV AH, AL // Save to AH
SHR AL, 4 // Output High 4 Bits
ADD AL, '0'
CMP AL, '9'
JBE @@OutCharLo
ADD AL, 'A'-'9'-1
@@OutCharLo:
AND AH, $f
ADD AH, '0'
CMP AH, '9'
JBE @@OutChar
ADD AH, 'A'-'9'-1
@@OutChar:
STOSW
end;
end;
本文介绍了一个将单个BYTE值转换为十六进制字符串的Delphi过程。该过程使用了内联汇编来高效地完成转换,并通过条件跳转优化了字符输出流程。
1401

被折叠的 条评论
为什么被折叠?



