-
-
[求助]一段很短的汇编算法使用了MMX
-
发表于:
2010-12-27 23:06
4515
-
下面一段汇编代码谁能帮忙把他转成c++或者c语言,因为这代码用了paddq这指令,我的CPU是AMD的,用内联编译不能通过,请哪位高手帮忙,两个压入参数一个输出
var_4 = dword ptr -4
arg_0 = dword ptr 8
arg_4 = dword ptr 0Ch
push ebp
mov ebp, esp
push ebx
sub esp, 4
movd ebx, mm2
sub esp, 0Ch
mov edx, ebx
add edx, [ebp+var_4]
mov eax, 20h
mov ecx, eax
sub ecx, edx
mov eax, [ebp+8]
shl eax, cl
push eax
call byteorder_32;这里其实就是bswap eax 交换字节
add esp, 10h
movd mm3, eax
movd edx, mm1
mov eax, ebx
add eax, [ebp+12]
movd mm2, eax
por mm0, mm3
psllq mm1, 3
mov eax, ebx
add eax, [ebp+12]
and eax, 18h
movd mm3, eax
paddq mm1, mm2;就在这里编译通不过
movd dword ptr [edx], mm0
pand mm2, mm5
psrlq mm1, 3
psrld mm0, mm3
mov ebx, [ebp+var_4]
leave
retn
[注意]传递专业知识、拓宽行业人脉——看雪讲师团队等你加入!