为什么使用如此“奇怪”的寄存器大小?关于为什么不优选使用64或128位这些寄存器的任何文档?
答案 0 :(得分:9)
在Wikipedia page on the IEEE 754-1985 standard上有关于80位扩展格式的非常好的解释:
“该标准还建议使用扩展格式执行 内部计算的精度高于 最终结果,以尽量减少舍入错误“
双精度浮点数以64位表示。您可能需要更多的位来获得更高的中间结果精度,但是当您在最终结果中只需要64位时,使用128位类型将是过度的。
80位是一个相当偶数的位,大于64位。
考虑到建立这些标准时的数据总线是8位或16位,而不是今天的32位或64位。如果今天写入标准96位将是一个更合理的数字,或者数据可能会以128位传输,即使所有这些位都不会用于计算。