请告诉我c ++如何添加两个浮点类型数字并使进程如此之快。我正在尝试创建一个可以计算大量数字的库,但我添加它们的过程效率要比两个浮点数低1000倍。
答案 0 :(得分:2)
答案是CPU具有知道如何存储浮点数的硬件,并且能够直接对它们执行计算。
例如,您可以在寄存器xmm0和xmm1中存储两个浮点数,并通过让CPU执行以下指令将它们加在一起: -
添加%xmm1,%xmm0
这适用于64位" x86"但每个CPU都有类似的。
好吧,8位Z80之类的旧CPU没有硬件来执行浮点运算,你必须编写一小段代码来执行此操作,是的,它们很慢......