long double在英特尔64位平台上的实际精度是多少?它是将80位填充到128位,还是实际的128位?
如果是前者,除了gmp之外,还有其他选择来达到真正的128精度吗?
发布于 2010-05-10 08:16:10
x86-64精度与常规x86相同。使用x87指令集,扩展双精度为80位,加上6个填充字节。没有128位FP硬件。
不过,四元或扩展四元精度的软件实现可能会受益于x86-64 64x64 => 128整数乘法指令。
发布于 2010-05-10 13:43:23
我推荐使用MPFR。它是一个建立在GMP之上的更复杂的多精度浮点库。
发布于 2010-05-10 08:36:35
两者都是64位的可能性很大(取决于编译器和操作系统),因为编译器发出的是标量SSE2而不是x87指令。
x86不支持高于80位的精度,但是如果你真的需要超过64位的FP算法,你应该检查你的数字,而不是用暴力解决问题。
https://stackoverflow.com/questions/2799684
复制相似问题