Retro video games delivered to your door every month!
Click above to get retro games delivered to your door ever month!
X-Hacker.org- iAPx86 - <b>pmaddwd packed multiply and add</b> http://www.X-Hacker.org [<<Previous Entry] [^^Up^^] [Next Entry>>] [Menu] [About The Guide]
PMADDWD         Packed Multiply and Add

PMADDWD destination, source                          CPU: MMX

        Logic
        mm(31..0)  <- mm(15..0) *mm/m64(15..0)  + mm(31..16)*mm/m64(31..16)
        mm(63..32) <- mm(47..32)*mm/m64(47..32) + mm(63..48)*mm/m64(63..48)

    The PMADDWD instruction multiplies the four signed words of the
    destination operand by the four signed words of the source operand.
    The result is two 32-bit doublewords. The two high-order words are
    summed and stored in the upper doubleword of the destination operand.
    The two low-order words are summed and stored in the lower doubleword
    of the destination operand. This result is written to the destination
    operand. 

    The destination operand is an MMX register. The source operand can
    either be an MMX register or a 64-bit memory operand.

    The PMADDWD instruction wraps around to 80000000h only when all four
    words of both the source and destination operands are 8000h.


    Opcode      Format
    0F F5 /r    PMADDWD mm, mm/m64

Online resources provided by: http://www.X-Hacker.org --- NG 2 HTML conversion by Dave Pearson