文本到浮点:它是如何工作的

时间:2011-09-08 08:53:39

标签: floating-point

说,我用编程语言写下字符5.4并将其存储到双变量中。计算机究竟如何确定哪个浮点表示(尾数和指数)最接近该数字?

2 个答案:

答案 0 :(得分:1)

嗯,编程语言的编译器或解释器使用算法将十进制字符串表示转换为(二进制)浮点表示。

一个实现是David Gay在http://www.netlib.org/fp/dtoa.c的strtod()。

请注意,虽然Gay的代码是广泛使用的C库中strtod()和snprintf()的许多实现的基础,但代码本身存在许多问题,因此不应使用。但是,它作为一个独立的例子具有指导意义。

答案 1 :(得分:1)

我曾以简单易懂的方式对价值5.2进行了描述,请参阅this SO article