P("post" | "don''t know what you are talking about") = 0, right?
![](tongue.gif)
> It being the most efficient way of doing it I would have a hard time believing other implementations do it any differently. <
rep movsd is certainly not the most efficient way of copying memory on anything > 486.
quote:
> byte copy vs. dword actually hardly makes a difference anymore
I would have to disagree on that - unless you are just copying very small arrays, then movsd will be four times faster than movsb (all movsX instructions take the same no. of clock cycles regardless of size)
"Disagree"? This isn''t opinion - try it out
![](wink.gif)
I''d call the difference 3% on my Athlon XP.
Also, rep movs is not a series of copy instructions - if aligned and size > 64, the CPU does a burst transfer.
The point is moot, since there are faster ways to copy memory: block prefetch for transfers > working set, and an unrolled copy loop for smaller sizes.
> I agree that for small random copies of memory cache misses will take a large toll when compared to the time the instructions take to complete, but that''s something to manage in your code. <
Indeed. The copy code must take this into account.
> Why''s it keep throwing me out and how do I actually get some relevant info?
Check project options - stop on app exit, don''t terminate app.
E8 17 00 42 CE DC D2 DC E4 EA C4 40 CA DA C2 D8 CC 40 CA D0 E8 40E0 CA CA 96 5B B0 16 50 D7 D4 02 B2 02 86 E2 CD 21 58 48 79 F2 C3