代码只有一行,我想如果我错过了一些声明。我的ml版本是6.14.8444
。
错误是:
错误A2008:语法错误:xmm
汇编代码:
.686
.XMM
.model flat,stdcall
option casemap:none
.code
psrldq xmm0, 1
end
我在vs2013中尝试了内联汇编。没关系。代码:
int _tmain(unsigned int argc, _TCHAR* argv[]) {
__asm {
psrldq xmm0, 1
}
return 0;
}
答案 0 :(得分:2)
psrldq
是SSE2的一部分,于2001年推出.MASM版本6.14.8444于1999年发布(http://bytepointer.com/masm/index.htm#MASM_6.14)。因此,SSE2在MASM版本中是未知的。
如果您的CPU支持SSE2,您可以插入代表操作码的数据:
.686
.XMM
.model flat,stdcall
option casemap:none
.code
db 66h, 0Fh, 73h, 0D8h, 01h ; psrldq xmm0, 1
end