When I wrote
mov edx, dword ptr[variable]
It means pass the value of the variable to edx. However, when I wrote
mov mm0, sword ptr[edx]
It means pass the value pointed to by edx to mm0.
I want to know why the same code pattern have difference behaviors.