gpt4 book ai didi

c - 语言如何处理引擎盖下的打印 float ?

转载 作者:太空狗 更新时间:2023-10-29 17:09:17 24 4
gpt4 key购买 nike

作为个人项目,我一直在为我自己的类 C 语言编写一个编译器,以我自己设计的 CPU 仿真器为目标。

作为其中的一部分,我想实现一个标准的浮点库(典型的 IEEE 单精度),但我一直在努力想办法以一种易于阅读的方式打印出 float (如 1.2345而不是原始数据整数),我能想到的最好的办法是为 log102 生成值并进行一些奇数乘法以获得适合打印的数字。

是否有一种算法可以将 float 转换为易于打印的形式,或者可以在不使用 printf("%f",float_value); 或在 a 中进行类型转换的情况下打印 float C 类语言?

最佳答案

据我了解,打印 float 的当前技术水平是 Florian Loitsch 的 Grisu 算法系列。你可以阅读论文here .

为了更轻松地介绍将二进制 float 转换为十进制(反之亦然)的问题,我强烈推荐 Rick Regan 的网站,http://www.exploringbinary.com/

关于c - 语言如何处理引擎盖下的打印 float ?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/30280168/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com