Parameter | Single | Double |
---|---|---|
Bits Gesamt | 32 | 64 |
Bits Mantisse | 23(+1) | 52(+1) |
Bits Charakteristik | 8 | 11 |
Exponent-Verschiebung | +127 | +1023 |
Wert = ( − 1)Vorzeichen ⋅ 1, Mantisse ⋅ 2(Charakteristik − Verschiebung)
float
für single precisiondouble
für double precision xmm0
, xmm1
, …, xmm15
ADDSS
(add scalar single) zur Addition von float
sADDSD
(add scalar double) zur Addition von double
s SD
am Ende denkenxmm
-Register oder Speicherstellen sein section .data ; Daten-Bereich -- KEIN Code
value: ; Zugriff über dieses Label
dq 12.45 ; Speichere 64bit-Komma-Zahl (Quad word)
section .text ; Code-Bereich
func:
movsd xmm0, [value] ; Kopiere die 12.45 nach xmm0
ret