unsigned char ZhiJieA[64] = { 1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16,17,18,19,20,21,22,23,24,25,26,27,28,29,30,31,32,33,34,35,36,37,38,39,40,41,42,43,44,45,46,47,48,49,50,51,52,53,54,55,56,57,58,59,60,61,62,63,64 };
unsigned char ZhiJieC[16] = {};
__m128i a;
__m128i b;
__m128i c;
//加载 128 位值。
a = _mm_loadu_si128((__m128i*)ZhiJieA);//加载 128 位值。
b = _mm_loadu_si128((__m128i*)ZhiJieA);//加载 128 位值。
//相加
c = _mm_add_epi8(a, b);
//取出数据
_mm_storeu_si128((__m128i*)(ZhiJieC), c);
本人刚接触 SSE指令 想请教一下 上面的代码是 按顺序 A[0]+A[1]+A[2]以此类推 显然不是我想要的
那么如何实现每间隔4个字节相加一次 比如 A[0]+A[4]+A[8]以此类推 得到最终16次相加的总数