[表示 : 全て 最新50 1-99 101- 201- 301- 401- 501- 601- 701- 801- 901- 1001- 2ch.scのread.cgiへ]
Update time : 10/25 00:04 / Filesize : 306 KB / Number-of Response : 1016
[このスレッドの書き込みを削除する]
[+板 最近立ったスレ&熱いスレ一覧 : +板 最近立ったスレ/記者別一覧] [類似スレッド一覧]


↑キャッシュ検索、類似スレ動作を修正しました、ご迷惑をお掛けしました

C言語なら俺に聞け 140



49 名前:デフォルトの名無しさん mailto:sage [2017/05/15(月) 15:48:46.87 ID:Vosr5hkL0.net]
VC++での逆アセンブルコード (Visual Studio 2017 debugモード)

// a=a++
a = 10;
004037DE mov dword ptr [a],0Ah
a = a++;
004037E5 mov eax,dword ptr [a]
004037E8 mov dword ptr [a],eax
004037EB mov ecx,dword ptr [a]
004037EE add ecx,1
004037F1 mov dword ptr [a],ecx

// a=++a
a = 10;
004037F4 mov dword ptr [a],0Ah
a = ++a;
004037FB mov eax,dword ptr [a]
004037FE add eax,1
00403801 mov dword ptr [a],eax
00403804 mov ecx,dword ptr [a]
00403807 mov dword ptr [a],ecx

// a = a+++a
a = 10;
0040380A mov dword ptr [a],0Ah
a = a+++a;
00403811 mov eax,dword ptr [a] // aの値と
00403814 add eax,dword ptr [a] // aの値を加算して (a+a)
00403817 mov dword ptr [a],eax // 一時保存(評価)して
0040381A mov ecx,dword ptr [a] // 評価結果に対して
0040381D add ecx,1       // 1を加算して (a+a)++
00403820 mov dword ptr [a],ecx // 最終結果をaに代入






[ 続きを読む ] / [ 携帯版 ]

全部読む 次100 最新50 [ このスレをブックマーク! 携帯に送る ] 2chのread.cgiへ
[+板 最近立ったスレ&熱いスレ一覧 : +板 最近立ったスレ/記者別一覧](;´∀`)<306KB

read.cgi ver5.27 [feat.BBS2 +1.6] / e.0.2 (02/09/03) / eucaly.net products.
担当:undef