『3 Dゲームプログラミングマスターテクニック』——学習ノート
750 ワード
memset()は1バイトで埋め込まれているため、速度が遅い.次のコードでマルチバイト入力できます.
32ビット数充填
16桁の入力
32ビット数充填
inline void Mem_Set_QUAD(void * dest, UINT data, int count)
{
// 32
// count QUAD
_asm
{
mov edi, dest ; edi
mov ecx, count ; 32
mov eax, data ; 32
rep stosd ;
}
}
16桁の入力
inline void Mem_Set_WORD(void * dest, USHORT data, int count)
{
// 16
// count WORD
_asm
{
mov edi, dest ; edi
mov ecx, count ; 32
mov ax, data ; 32
rep stosw ;
}
}