_mm_cvtsd_si64x
[Diese Dokumentation ist nur eine Vorschau und wird in späteren Versionen ggf. geändert. Blank topics are included as placeholders.]
Microsoft-spezifisch
Generiert das x64 erweiterte Form des Bekehrt-skalaren Gleitkommazahl mit doppelter Genauigkeit in die Anweisung der 64-Bit-Ganzzahlcvtsd2si(Double), die das im ersten Element value akzeptiert und eine 64-Bit-Ganzzahl konvertiert.
__int64 _mm_cvtsd_si64x(
__m128d value
);
Parameter
- [in] value
Eine __m128d Struktur, die zwei Gleitkommazahlen mit doppelter Genauigkeit enthält.
Rückgabewert
Eine ganze Zahl, die das Ergebnis der Konvertierung darstellt.
Anforderungen
Intrinsisch |
Architektur |
---|---|
_mm_cvtsd_si64x |
x64 |
Headerdatei <intrin.h>
Hinweise
Die abgerundeten Steuerbite in MXCSR werden verwendet, um das Rundungsverhalten zu bestimmen. Der standardmäßige gerundete Modus befindet und sich um zur gerade Zahl gerundet, wenn der dezimale Teil 0.5 ist. Wenn ein Überlauf auftritt, wird 0x8000000000000000 (9223372036854775808) zurückgegeben. Die __m128 Struktur stellt ein XMM-Register dar, sodass können systeminterne einen Wert aus dem zu verschiebenden XMM-Register im Systemspeicher.
Diese Routine ist als systeminterne Funktion nur verfügbar.
Beispiel
// _mm_cvtsd_si64x.cpp
// processor: x64
#include <intrin.h>
#include <stdio.h>
#pragma intrinsic(_mm_cvtsd_si64x)
int main()
{
__m128d d;
__int64 b;
double adbl[2] = { 1.8E6, 200.5 };
// Loads the double values into d
// (moves data into the XMM registers)
d = _mm_loadu_pd (adbl);
// Extract the first element of a
b = _mm_cvtsd_si64x(d);
printf_s("%I64d\n", b );
}