Was this page helpful?
Your feedback about this content is important. Let us know what you think.
Additional feedback?
1500 characters remaining
Export (0) Print
Expand All
Expand Minimize
Important This document may not represent best practices for current development, links to downloads and other resources may no longer be valid. Current recommended version can be found here.


Microsoft Specific

Generates a Move String (rep movsd) instruction.

void __movsd( 
   unsigned long* Dest, 
   unsigned long* Source, 
   size_t Count 


[out] Dest

The destination of the operation.

[in] Source

The source of the operation.

[in] Count

The number of doublewords to copy.

Intrinsic Architecture


x86, x64

Header file <intrin.h>

The result is that the first Count doublewords pointed to by Source are copied to the Dest string.

This routine is only available as an intrinsic.

// movsd.cpp
// processor: x86, x64
#include <stdio.h>
#include <intrin.h>

#pragma intrinsic(__movsd)

int main()
    unsigned long a1[10];
    unsigned long a2[10] = {950, 850, 750, 650, 550, 450, 350,
                            250, 150, 50};
    __movsd(a1, a2, 10);

    for (int i = 0; i < 10; i++)
        printf_s("%d ", a1[i]);


950 850 750 650 550 450 350 250 150 50 

Community Additions

© 2015 Microsoft