a + b + c的add3指令,只有一个舍入

时间:2018-02-21 12:04:16

标签: instructions instruction-set

背景

众所周知,两个浮点数的确切乘积总是浮点数,但错误exact(a*b) - float(a*b)是。一些精确乘法的代码通过返回两个数字

来利用它
res = a * b
err = fma(a, b, -res)

这样可以使用fused-multiply-add instruction返回表达式(a*b)+c ,只需一次舍入

问题

现在,我想对 sums 做同样的事情,即

res = a + b
err = add3(a, b, -res)

add3应该使用一个舍入返回表达式(a+b)+c

除了in this article之外,我无法找到真实世界中add3实际存在的提示。

是否有包含add3的CPU指令集?是否有语言实现它?

0 个答案:

没有答案