function HexToFloat(Str:String):Single
//Single是32位浮点数类型
var
PByte;
i:Byte;
begin
P:=@Result;
for i:=0 to Length(Str) div 2-1 do
begin
P^:=StrToInt('$'+Copy(Str,i*2+1,2));
Inc(P);
end;
end;
procedure TForm1.Button1Click(Sender: TObject);
begin
Caption:=FloatToStr(HexToFloat(Edit1.Text))
// eg: 60E51A41 -> 9.680999...
end;