浮点数是如何转换成ieee754代码的
发布网友
发布时间:2023-09-14 05:24
我来回答
共1个回答
热心网友
时间:2024-11-05 18:46
“网上资料都是将ieee754转换成数字”这个我倒是真搜不到... 严格地说只有一个英文数学向的论文|||(更正 我连那个论文也找不到了)
最简单的方法(除了直接用C库的函数)
float s = 0;
for (;;)
{
s = s * 10 + *p - '0';
}
x.,xb
如果你想硬转的话,我只问你一个问题,把十进制有效数字对齐到二进制有效数字你有概念么,事实上浮点数和字符串装换主要的工作就只是这么一个问题。写程序不是抄抄代码就成的,基本原理你都没概念给你讲有什么用。
----
嘛... 其实已经告诉你了,把十进制有效数字对其到二进制上... 二不能被五整除所以对齐结果可能是无限小数;然后把10底的指数换算成2底的在把对齐时候的偏差也加进去就有了有效数字和指数(因为前面有效数字对齐了所以这个指数肯定是整数)。具体过程既然别人写出来是论文我写出来也不会好看到哪儿去。 论难度的话也就是高考数学大题稍强的水平吧,因为只是高三知识折腾来折腾去x.,x
----
你要理解这么个情况,知道这个算法并且还有闲心逛知道的就算除了我以外还有别人一只手也能数过来。这种没几个人知道的东西你觉得在没有基础铺垫的情况下我可能三言两语跟你说清楚么。所以我一直在给你传达的信息就是别研究这种没什么意义的东西了,实际操作中只要不是想彻底自己实现浮点数和字符串的相互转化,不可能用到这个(这也就是这个并不是特别难的算法为什么没几个人知道的另一方面原因,不过它依然很麻烦)。况且这个根本不是计算机问题而是彻头彻尾的数学问题。