3.4 Floating-Point Immediates in Instructions
Floating-point immediate values are accepted as instruction operands. As default, the type is a REAL4, which has a magnitude of 32 bits:
mov eax, 1.0
With type coercion, it's also possible to define a 64-bit "double", although it's probably useful in 64-bit code only:
mov rax, real8 ptr 1.0
Additionally, operators LOW32 and HIGH32 accept a floating-point constant as argument. In this case, the constant is assumed to have format REAL8. Thus it's possible to pass a double constant directly as a procedure argument in 32-bit code:
push HIGH32 1.0
push LOW32 1.0
call WorkWithReal8Value