gpt4 book ai didi

c - 浮点平方根倒数法正确舍入

转载 作者:塔克拉玛干 更新时间:2023-11-03 03:14:46 25 4
gpt4 key购买 nike

我在求平方根的倒数的基础上使用 Newton-Raphson 方法(在汇编中)实现了 32 位 IEEE-754 浮点平方根。我正在使用舍入到最近的舍入方法。我的平方根方法只接受归一化值和零,但不接受非归一化值或特殊值(NaN、Inf 等)

我想知道我如何才能实现正确的舍入(使用类似汇编的指令)以便我的结果对于所有输入都是正确的(符合 IEEE-754)?基本上,我知道如何测试我的结果是否正确,但我想调整下面的算法,以便获得正确的舍入结果。我应该在算法中添加什么指令?

参见:Determining Floating Point Square Root了解更多信息

谢谢!

最佳答案

只有大约 20 亿个 float 符合您的描述。尝试所有这些,与 C 库中的 sqrtf 进行比较,并检查所有差异。如果您担心,可以使用 C 库中的 sqrtsqrtl 获得更高精度的平方根。不过,sqrtsqrtfsqrtl 已被典型的 C 库正确舍入,因此直接比较应该可行。

关于c - 浮点平方根倒数法正确舍入,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/17708770/

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