貌似是在《3D游戲編程大師技巧》上看到的這兩個函數,當時覺得很牛耶,于是就記下來了,不過至今沒有怎么用到,我想估計以后會有用吧。
//內嵌匯編的用于4字節填充的函數
inline void Mem_Set_QUAD(VOID *dest, UINT data, int count )
{
_asm
{
mov edi, dest ; edi指向目標內存
mov ecx, count ;要移動的32位字數
mov eax, data ;32位數據
rep stosd ;移動數據
}//end asm
}//end Mem_Set_QUAD
//用于2字節(DWORD)數據填充的函數
inline void Mem_Set_WORD(VOID *dest, USHORT data, int count )
{
_asm
{
mov edi, dest ; edi指向目標內存
mov ecx, count ;要移動的16位字數
mov ax, data ;16位數據
rep stosw ;移動數據
}//end asm
}//end Mem_Set_WORD