On Intel x86 systems, the result of a function is returned in one of the following three ways, depending upon the result's
data type and if the floating-point coprocessor is used:
In register eax
In a temporary storage area provided by the caller
On top of the Intel floating-point coprocessor's stack in register fp0