高手在那里!

ekin 2003-09-12 07:33:33
有个十六进制小数,如何转化为十进制小数,如1.2d3e423c.一后面的为小数点。
...全文
27 9 打赏 收藏 转发到动态 举报
写回复
用AI写文章
9 条回复
切换为时间正序
请发表友善的回复…
发表回复
FrameSniper 2003-09-14
  • 打赏
  • 举报
回复
故国了色的基础的确很厉害,我现在对移位这些东西用的少,所以也不是很清楚,楼主的问题也可以让我接触一下这个方面的知识!

另外,俺可没有生气啊!你们别误会!

hkbarton 2003-09-14
  • 打赏
  • 举报
回复
现在问题解决了吧,我看了那个帖子也学到不少东西,本来这学期学计算机系统结构就学了浮点数的表示方法,还没有应用过呢,呵呵
ekin 2003-09-13
  • 打赏
  • 举报
回复
在故国告诉我之前,我是不知道有move这个函数的,更不知道它有这个功能,当时有点郁闷,所以说了那么句话,实在抱歉。
hkbarton 2003-09-13
  • 打赏
  • 举报
回复
呵呵,大家不要生气呀
FrameSniper 2003-09-13
  • 打赏
  • 举报
回复
啊哦,这个楼主嘴巴还挺硬啊!

浮点数在内存中的存在形式正如你另外一个帖子中说的那样,采用符号位+阶码+小数部分去表示!如果不是这样,故国给你使用的那个Move函数也不可能做到你要求的那种功能!既然这种内部表示方法你都知道了,我想找个Move函数也不是很麻烦吧!

所有的操作都有Delphi提供的函数去完成,即使你通过Move把你的16进制形式转换为了10进制,但在内存中的存在方式仍然还是按位来存放的!而且通过Move来进行转换的第一步也是把这个小数表示成整数的形式!
AppFirst 2003-09-13
  • 打赏
  • 举报
回复
给你个例子不知是否有帮助
procedure TForm1.Button1Click(Sender: TObject);
Var
a:String;
b:Byte;
begin
a:='11234ff';
ShowMessage(FloatToStr(StrToInt('$'+a)));
end;
ekin 2003-09-12
  • 打赏
  • 举报
回复
但是小数的位数是不定的
我是想不起来,也不会做,你要认为你是高手的话,你就试一试,不是那么简单的。不要不会就找借口
flinming 2003-09-12
  • 打赏
  • 举报
回复
up
FrameSniper 2003-09-12
  • 打赏
  • 举报
回复
这种问题还是自己想想吧,楼主是个懒惰的家伙!

1,183

社区成员

发帖
与我相关
我的任务
社区描述
Delphi Windows SDK/API
社区管理员
  • Windows SDK/API社区
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

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