_mm_cvtsi64x_ss
Microsoft 专用
生成将 64 位整数转换为标量单精度浮点值的 x64 扩展版本 (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
结束 Microsoft 专用