_mm_cvtsi64x_ss

Блок, относящийся только к системам Майкрософт

Создает расширенную версию x64-разрядного целого числа Convert 64-bit Integer в скалярную инструкцию с плавающей запятой с плавающей запятой (cvtsi2ss).

Синтаксис

__m128 _mm_cvtsi64x_ss(
   __m128 a,
   __int64 b
);

Параметры

a
[in] Структура __m128 , содержащая четыре значения с плавающей запятой с одной точностью.

b
[in] 64-разрядное целое число, которое необходимо преобразовать в значение с плавающей запятой.

Возвращаемое значение

Структура __m128 , в которой первое значение с плавающей запятой является результатом преобразования. Остальные три значения копируются без изменений из a.

Требования

Intrinsic Архитектура
_mm_cvtsi64x_ss x64

Файл<заголовка intrin.h>

Замечания

Структура __m128 представляет регистр XMM, поэтому встроенная функция позволяет переместить значение b из системной памяти в регистр XMM.

Эта процедура доступна только как встроенная функция.

Пример

// _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

Завершение блока, относящегося только к системам Майкрософт

См. также

__m128
Встроенные компоненты компилятора