在C99规范中,remquo函数被用于实现参数约简,可以利用商的一些低位。需要注意的是,x的大小相对于y可能非常大,因此实现商的精确表示并不实际。在这种情况下,“参数约简”是什么意思?并且有没有一个能够利用商的几个低位的例子?
参数归约指将周期函数的参数映射到规范周期内(例如,(-π,π]或类似)。如果您使用π/2作为除数,则商的低位足以确定三角函数的正确符号/等。
然而,遗憾的是,remquo
对于实现标准三角函数参数归约毫无用处,因为π
是无理数; 对大参数进行模近似π的缩小将给出没有有效位的结果,即全部错误。
但是,如果您编写了一个定义为sin(πx)的函数f(x)
或类似函数,则在浮点数中现在可以准确表示周期,remquo
可以完全满足您的需要,而直接调用sin(2*M_PI*x)
将在x
很大时给出没有有效位的结果(即全部错误)。