c - 单精度浮点除法的最佳精度

标签 c math assembly floating-point verilog

如果仅使用单精度加/减和乘法硬件(无 FMA),是否可以执行除法并获得 IEEE-754 单精度正确值?

具体来说,如果在单精度硬件上进行浮点除法的Newton-Raphson方法,是否有可能得到IEEE-754正确的结果?

最佳答案

Is it possible to perform division and obtain IEEE-754 single-precision correct values if one is using single-precision add/sub and multiplication hardware only (no FMA)?

是的。

总是可以通过将数字表示为几个单精度 float 的总和来模拟更高的精度,two , three ,或四个(参见 this page 上的 QD 库)。对于一个正确舍入的单精度除法,你应该只需要两个单精度数带来的精度,并且这种表示的必要操作可以只用单精度加减乘法来实现。

关于c - 单精度浮点除法的最佳精度,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/24826982/

相关文章:

c - 具有相同参数类型的结构中的函数指针

c - 解码二进制信号

java - 数学的堆栈行为

pointers - 在 Win64 下,设置了 MSB(即保存负值)的指针总是无效吗?

assembly - x86 汇编语言中跳转到特定行

c - 撤消 ungetc() : "How" do fseek(), rewind() 和 fsetpos() 的效果吗?是否每次都重新填充缓冲区?

c - 即使文件不为空,fgets也会返回NULL

java - 如何将文本字段解析为bigdecimal

python - 哪种编程语言或库可以处理 Infinite Series?

c - stackframe 不会从堆栈中删除?