当前位置: 代码迷 >> 汇编语言 >> 1组有符号16位数据扩展到32位的有关问题
  详细解决方案

1组有符号16位数据扩展到32位的有关问题

热度:9474   发布时间:2013-02-26 00:00:00.0
1组有符号16位数据扩展到32位的问题
从内存中读取的数据是16位有符号的,
在计算中需要扩展到32位,

如下代码片段:

short   a[4]   =   {-1,   2,   3,   4};
__asm
{
lea   esi,   a
movaps   xmm0,   xmmword   ptr   [esi]
}
运行后,  
xmm0的低64位是4X16位数据(我实际要用到的数据),我想要把它扩展成4X32位的有符号数据,怎么做比较好,

我尝试了

pxor   xmm7,   xmm7
punpcklwd   xmm0,   xmm7
但是复数的操作就不对了,




------解决方案--------------------------------------------------------
看不大懂。 如果是X86汇编里,16位有符号数扩展到32位的话,需要使用MOVSX
------解决方案--------------------------------------------------------
复数?what't mean?
  相关解决方案