読者です 読者をやめる 読者になる 読者になる

個人的自由ノート

ふと自分が気になった事を書いてます

アセンブラの条件分岐 i386編

参考書から抜粋してます。以前投稿した記事も含めて、自分用にまとめて復習しています。 i386では「ブランチ」でなく「ジャンプ」と呼ぶようだ 以下のC言語ファイルがあります。 int condition(int a, int b) { if (a == b) b = 1; return b + 1; } これを逆…

複雑な処理を読んでみる i386編

以下のようなCソースファイルがあります。 int call_complex1() { return return_arg1(0xfe) + 1; } int call_complex2(int a, int b) { static_value = return_arg1(b); return b; } これはi386で逆アセンブルするとどうなるのでしょうか…というのが今回の…

関数呼び出し i386編

i386がなんとなく気になったので記事に書いてみました。以下のプログラムをi386で逆アセンブルします。 int call_complex1(){ return return_arg1(0xfe) + 1; } 以下が生成されたコードです。 00fe150d <call_complex1>: fe150d: 68 fe 00 00 00 push $0xfe fe1512: e8 26 f</call_complex1>…