なぜVBは扱いが低いのか (200レス)
上
下
前
次
1-
新
175
(1)
: 2013/01/31(木)22:00
ID:wVU/jdLo(9/13)
AA×
[240|
320
|
480
|
600
|
100%
|
GIF
|
べ
|
レス栞
|
レス消
]
175: [] 2013/01/31(木) 22:00:58.85 ID:wVU/jdLo ではこちらはデータ転送部分だけだが、オレの書いたコードをあげよう void __stdcall s2sp15MoveMemory32SSE2( long ptrSrcZeroDTSC, long ptrDstZeroDTSC, long SrcWidth, long LinePlusByte,long StartTop, long WorkHeight ) // 同サイズでの32ビットカラーデータ転送。サイズは送り側 SrcWidth を、8の倍数にすること。 { __asm { mov ebx,LinePlusByte mov esi,ptrSrcZeroDTSC mov edi,ptrDstZeroDTSC mov eax,SrcWidth movd mm0,eax shl eax,2 // 32ビットなので4倍 mov ecx,StartTop mul ecx add esi,eax // ソース開始アドレス movd eax,mm0 shl eax,2 // 32ビットなので4倍 add eax,ebx // LinePlusByte mul ecx add edi,eax // デスティネーション開始アドレス movd eax,mm0 shr eax,2 // 4点ずつ処理する movd mm6,eax mov eax,WorkHeight add eax,ecx movd mm5,eax // エンドライン mov eax,ebx or eax,edi test eax,0xf jnz LL201 // アライメントNG http://mevius.5ch.net/test/read.cgi/gamedev/1284400196/175
ではこちらはデータ転送部分だけだがオレの書いたコードをあげよう 同サイズでの32ビットカラーデータ転送サイズは送り側 を8の倍数にすること ビットなので4倍 ソース開始アドレス ビットなので4倍 デスティネーション開始アドレス 4点ずつ処理する エンドライン アライメント
上
下
前
次
1-
新
書
関
写
板
覧
索
設
栞
歴
あと 25 レスあります
スレ情報
赤レス抽出
画像レス抽出
歴の未読スレ
ぬこの手
ぬこTOP
0.041s