求救!!有谁知道把浮点数转换为十六进制的??如把12。5转换为十六进制

dowms22 2003-10-06 05:51:58
求救!!有谁知道把浮点数转换为十六进制的??如把12。5转换为十六进制
...全文
235 14 打赏 收藏 转发到动态 举报
写回复
用AI写文章
14 条回复
切换为时间正序
请发表友善的回复…
发表回复
dowms22 2003-10-07
  • 打赏
  • 举报
回复
那有谁知道,有没有这样的含数,能够把任何的实数转换为十六进制数?谢了!!
aiirii 2003-10-07
  • 打赏
  • 举报
回复
*256 是移兩位的意思!!!一般,小數部分是分開處理的,將其 * n倍成整數來求解!
chinafanlin 2003-10-07
  • 打赏
  • 举报
回复
var floatnumber : single; (4 byte)
intptr : ^integer; (4 byte)

floatnumber := XXXXX.YYYYY;
intptr := @floatnumber;

result := intptr^;

format('%X',[result]);

tiger19760407 2003-10-07
  • 打赏
  • 举报
回复
同意楼上的楼上的,呵呵!
dowms22 2003-10-07
  • 打赏
  • 举报
回复
to hiflower(花)
你那小数部分0。5*256,为什么要乘以256啊?是什么意思啊?呵呵!!
Fangyuanshan 2003-10-07
  • 打赏
  • 举报
回复
mark
hiflower 2003-10-07
  • 打赏
  • 举报
回复
呵呵,我写错了,是 IntToHex
jtg98g3 2003-10-07
  • 打赏
  • 举报
回复
我帮你做个函数,你给我多少分!?
dowms22 2003-10-07
  • 打赏
  • 举报
回复
呵呵,搞定了。谢谢 hiflower(花)给了我思路。
不用我用你写的那个IntToStr(Int(0.5*256*256),4)会产生一个错误。不知道是什么原因。
我的思路是把它先转换为字符串,再进行處理
47522341 2003-10-07
  • 打赏
  • 举报
回复
建议自己写点代码搞定;^_^
hiflower 2003-10-07
  • 打赏
  • 举报
回复
只要得到了小数部分,以及你需要得到的结果的字节数,方法一样的。
IntToStr(Int(0.5*256*256),4) -->'8000'
hiflower 2003-10-06
  • 打赏
  • 举报
回复
整数部分:IntToHex(12,2)-->'0C'
小数部分:IntToHex(Int(0.5*256),2)-->'80'
hkbarton 2003-10-06
  • 打赏
  • 举报
回复
这个没有学过吗?整数部分mod 16 小数部分*16取整,自己写个过程就可以了,最后完成后是字符串
bestluo 2003-10-06
  • 打赏
  • 举报
回复
先转换成2进制,再转换成16进制。
PS:在DELPHI中可以调汇编哦

5,930

社区成员

发帖
与我相关
我的任务
社区描述
Delphi 开发及应用
社区管理员
  • VCL组件开发及应用社区
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧