为什么使用这种“怪异”的寄存器大小?是否有任何文档说明为什么不建议对那些寄存器使用64位或128位?
[Wikipedia page on the IEEE 754-1985 standard上有一个关于80位扩展格式的很好的解释:
“该标准还建议使用扩展格式来执行内部计算的精度高于最终结果,以最大程度地减少舍入误差”
双精度浮点数以64位表示。您可能希望再多一些位才能获得更高的中间结果精度,但是当最终结果中只需要64位时,使用128位类型将是过大的选择。]
80位是一个合理的偶数,大于64位。
考虑到那些标准建立时的数据总线是8位或16位,而不是今天的32位或64位。如果今天写的标准是96位,这将是一个更合理的数字,或者即使数据中不使用所有这些位,也可能将数据以128位的形式传输。