_mm_cvtsi64x_ss
Specyficzne dla firmy Microsoft
Generuje rozszerzoną wersję x64 instrukcji Konwertuj liczbę całkowitą 64-bitową na wartość zmiennoprzecinkową o pojedynczej precyzji (cvtsi2ss
).
Składnia
__m128 _mm_cvtsi64x_ss(
__m128 a,
__int64 b
);
Parametry
a
[in] Struktura zawierająca __m128
cztery wartości zmiennoprzecinkowe o pojedynczej precyzji.
b
[in] 64-bitowa liczba całkowita, która ma zostać przekonwertowana na wartość zmiennoprzecinkową.
Wartość zwracana
Struktura __m128
, której pierwsza wartość zmiennoprzecinkowa jest wynikiem konwersji. Pozostałe trzy wartości są kopiowane bez zmian.
Wymagania
Nieodłączny | Architektura |
---|---|
_mm_cvtsi64x_ss |
x64 |
Plik<nagłówka intrin.h>
Uwagi
Struktura __m128
reprezentuje rejestr XMM, więc funkcja wewnętrzna umożliwia przeniesienie wartości b z pamięci systemowej do rejestru XMM.
Ta rutyna jest dostępna tylko jako wewnętrzna.
Przykład
// _mm_cvtsi64x_ss.cpp
// processor: x64
#include <intrin.h>
#include <stdio.h>
#pragma intrinsic(_mm_cvtsi64x_ss)
int main()
{
__m128 a;
__int64 b = 54;
a.m128_f32[0] = 0;
a.m128_f32[1] = 0;
a.m128_f32[2] = 0;
a.m128_f32[3] = 0;
a = _mm_cvtsi64x_ss(a, b);
printf_s( "%lf %lf %lf %lf\n",
a.m128_f32[0], a.m128_f32[1],
a.m128_f32[2], a.m128_f32[3] );
}
54.000000 0.000000 0.000000 0.000000
END Microsoft Specific