| 网站首页 | 业界新闻 | 小组 | 威客 | 人才 | 下载频道 | 博客 | 代码贴 | 在线编程 | 编程论坛
欢迎加入我们,一同切磋技术
用户名:   
 
密 码:  
共有 2302 人关注过本帖
标题:弱问:SSE2中的MOVDQA的使用问题
只看楼主 加入收藏
gdutljg
Rank: 1
等 级:新手上路
帖 子:24
专家分:2
注 册:2009-3-24
结帖率:60%
收藏
已结贴  问题点数:10 回复次数:6 
弱问:SSE2中的MOVDQA的使用问题
大家好:
我写了个交换两个16bit内存的代码如下:
void test()
{
    const int m = 16;
    const int n = 2;
    int len = m*n;
    unsigned char arr[m*n];
    for(int i = 0;i<len;i++)
    {
        arr[i] = i%255;
    }

    __asm
    {
        lea  eax,arr //得到arr的地址
        mov  esi,eax
        movdqa xmm0,[esi]
        movdqa xmm1,[esi+16]
        movdqa [esi+16],xmm0
        movdqa [esi],xmm1
    }
}
运行中断了
用movdqu代替就OK了,这是为什么?
初学SSE2,不太懂这两个的区别
谢谢指点
搜索更多相关主题的帖子: MOVDQA 
2010-06-13 18:29
gdutljg
Rank: 1
等 级:新手上路
帖 子:24
专家分:2
注 册:2009-3-24
收藏
得分:0 
先顶一下
2010-06-13 18:51
zklhp
Rank: 20Rank: 20Rank: 20Rank: 20Rank: 20
来 自:china
等 级:贵宾
威 望:254
帖 子:11485
专家分:33241
注 册:2007-7-10
收藏
得分:10 
        movdqa XMM,XMM/m128     movdqa XMM/m128,XMM
        把源存储器内容值送入目的寄存器,当有m128时,必须对齐内存16字节.
2010-06-14 09:43
zklhp
Rank: 20Rank: 20Rank: 20Rank: 20Rank: 20
来 自:china
等 级:贵宾
威 望:254
帖 子:11485
专家分:33241
注 册:2007-7-10
收藏
得分:0 
        movdqu XMM,XMM/m128     movdqu XMM/m128,XMM
        把源存储器内容值送入目的寄存器,但不必对齐内存16字节.
2010-06-14 09:44
zklhp
Rank: 20Rank: 20Rank: 20Rank: 20Rank: 20
来 自:china
等 级:贵宾
威 望:254
帖 子:11485
专家分:33241
注 册:2007-7-10
收藏
得分:0 
LS 刷关键字的罢
2010-06-23 13:06
快速回复:弱问:SSE2中的MOVDQA的使用问题
数据加载中...
 
   



关于我们 | 广告合作 | 编程中国 | 清除Cookies | TOP | 手机版

编程中国 版权所有,并保留所有权利。
Powered by Discuz, Processed in 0.026304 second(s), 7 queries.
Copyright©2004-2024, BCCN.NET, All Rights Reserved