å°æ°è½¬æ¢ä¸º16è¿å¶ï¼
æ¹æ³1ï¼é¦å
转æ¢ä¸º2è¿å¶ï¼å转å为16è¿å¶ã
转å为2è¿å¶ï¼ä¹2åæ´å¾å°ãå©æ¶¦ã0.5D=0.1H
0.5*2=1;
0.12Dâ0.1EH
0.12*2=0.24 0
0.24*2=0.48 0
0.48*2=0.96 0
0.96*2=1.92 1
0.92*2=1.84 1
0.84*2=1.68 1
0.68*2=1.36 1
0.36*2=0.72 0
0.72*2=1.44 1
æ¹å¼2ï¼ç´æ¥ä¹ä»¥16åæ´å¾å°16è¿å¶æ°ã
æ¹æ³åä¸é¢ä¸æ ·ã
ä¸é¢æ个Delphiå½æ°ä½ å¯ä»¥åèä¸ä¸
function HexFloat(f: Double): String;
begin
Result := '0';
if f > 1E-99 then
begin
Result := Result + '.';
while f > 1E-99 do
begin
f := f * 16;
Result := Result + IntToHex(Trunc(f), 1);
f := f - Trunc(f);
end;
end;
end;
温馨提示:答案为网友推荐,仅供参考