我正在尝试使用 SSE2 优化功能。我想知道我是否可以比这种方式更好地为我的汇编代码准备数据。我的源数据是一堆来自 pSrcData 的无符号字符。我将它复制到这个浮点数组中,因为我的计算需要在浮点数中进行。
unsigned char *pSrcData = GetSourceDataPointer();
__declspec(align(16)) float vVectX[4];
vVectX[0] = (float)pSrcData[0];
vVectX[1] = (float)pSrcData[2];
vVectX[2] = (float)pSrcData[4];
vVectX[3] = (float)pSrcData[6];
__asm
{
movaps xmm0, [vVectX]
[...] // do some floating point calculations on float vectors using addps, mulps, etc
}
我有没有更快的方法将 pSrcData 的每个其他字节转换为浮点数并将其存储到 vVectX 中?
谢谢!