私は最近masmアセンブリを学び始めました、ivは見ているだけで私のプログラムの多くを分解しています。__int16(word)を使用すると、その値が最初にeaxにコピーされ、次に変数自体にコピーされることに気付きましたが、int(dword / 32)を使用すると、変数に直接コピーされます。
int y = 5;
0040101E mov dword ptr [y],5
y += 7;
00401025 mov eax,dword ptr [y]
00401028 add eax,7
0040102B mov dword ptr [y],eax
__int16 x = 3;
0040102E mov eax,3
00401033 mov word ptr [x],ax
x += 6;
00401037 movsx eax,word ptr [x]
0040103B add eax,6
0040103E mov word ptr [x],ax
__int16のサイズが16...eaxの半分のサイズであることに気付きました。これが最初にeaxに入れられ、次にaxだけがxに入れられる理由ですか?
また、どちらが最速ですか?
おすすめの良いmasmサイトはありますか?
ご入力いただきありがとうございます