【发布时间】:2013-01-21 19:16:25
【问题描述】:
将普通的 double* 转换为 _m128d* 非常简单易懂。 假设你有一个这样的数组:
double arr[8] = {1.0,2.0,3.0,4.0,5.0,6.0,7.0,8.0};
然后_m128d 演示文稿看起来像这样:
_m128d m_arr[8] = { [1.0,2.0] , [3.0,4.0] , [5.0,6.0] , [7.0,8.0] };
因为总是存储 2 个值,如果你可以这么说的话(这就是我的想象)。 但是,如果我改用 3x3 矩阵,这些值将如何拆分???例如:
double mat[3][3] = { {1.0, 2.0, 3.0}, {1.0, 2.0, 3.0}, {1.0, 2.0, 3.0} };
我试图将矩阵中的所有值相加,但并没有真正了解如何使用 SSE 有效地做到这一点,因此我需要了解如何处理矩阵 _m128d**。
有人知道吗?
【问题讨论】:
-
二维数组不是双指针。
-
是的没错,很迂腐。我希望这个问题无论如何都清楚
-
哦,你知道的。很抱歉假设相反。
-
如果我想知道的话,我会问一个关于矩阵和指针的问题。如果你不想为这个问题做出贡献,那就把你的冒犯态度留给自己吧。但我想你没有
-
我不是故意冒犯的。老实说,我假设您认为二维数组与双指针兼容。现在我相信已经理解并回答了您的问题。