وو

وحید آنلاین . آرشیو وبلاگ وحیدمی دات آی آر . شرکت بیان. vahidmy.blog.ir

وو

وحید آنلاین . آرشیو وبلاگ وحیدمی دات آی آر . شرکت بیان. vahidmy.blog.ir

MOVSLDUP

MOVSLDUP 

Usage:  MOVSLDUP  dest,src                                 Modifies flags: None. 

Move 128 bits representing packed SP data elements from 'src' to 'dest' register and duplicate low.

Move Packed Single-Precision FP Low and Duplicate


MOVSLDUP xmm1, xmm2/mem128         ; F3 0F 12 /r         [Pent4]


The linear address corresponds to the address of the least-significant byte of the referenced memory data. When a memory address is indicated, the 16 bytes of data at memory location mem128 are loaded and the single-precision elements in positions 0 and 2 are duplicated. When the register-register form of this operation is used, the same operation is performed but with data coming from the 128-bit source register.


source =  mem128 load instruction

xmm1[31-0]         = mem128[31-0]; 

xmm1[63-32]       = mem128[31-0]; 

xmm1[95-64]       = mem128[95-64]; 

xmm1[127-96]     = mem128[95-64

                       Or

move instruction

xmm1[31-0]        = xmm2[31-0]; 

xmm1[63-32]      = xmm2[31-0]; 

xmm1[95-64]      = xmm2[95-64]; 

xmm1[127-96]    = xmm2[95-64]; For 64 bit operation.


EXAMPLE:

movsldup xmm1 xmm2