MSVC ++和SSE2

问题描述

为什么_ mm_slli_epi64(_mm128i x,int 1)在每次连续五次移位一位后似乎停止工作,并且似乎没有将字节[9]中的位移位到使用msvc ++ 2019 64位时,完全为字节[8]。我选择只显示字节[08]到字节[15],直到需要进一步讨论为止。我正在Windows的Parallels上的iMac上使用win 10。

输出: __m128i变量向左移动的示例

示例1: 原始LE:0x0706050403020100 0F0E0D0C0B0A0908 Little Endian 原始BE:[08]-[09]-[0A]-[0B]-[0C]-[0D]-[0E]-[0F]大端

字节:[08] [09] [10] [11] [12] [13] [14] [15]

  1. 结果BE 01:[10]-[12]-[14]-[16]-[18]-[1A]-[1C]-[1E]
  2. 结果BE 02:[20]-[24]-[28]-[2C]-[30]-[34]-[38]-[3C]
  3. 结果是03:[40]-[48]-[50]-[58]-[60]-[68]-[70]-[78]
  4. 结果BE 04:[80]-[90]-[A0]-[B0]-[C0]-[D0]-[E0]-[F0]
  5. 结果BE 05:[00]-[21]-[41]-[61]-[81]-[A1]-[C1]-[E1]
  6. 结果BE 06:[00]-[42]-[82]-[C2]-[02]-[43]-[83]-[C3]
  7. 结果BE 07:[00]-[84]-[04]-[85]-[05]-[86]-[06]-[87]

解决方法

暂无找到可以解决该程序问题的有效方法,小编努力寻找整理中!

如果你已经找到好的解决方法,欢迎将解决方案带上本链接一起发送给小编。

小编邮箱:dio#foxmail.com (将#修改为@)