Flag)にチャレンジしたので、アセンブラやバイナリに興味が湧いてきてしまいました。マシン語入門編」を再読していました。2003を前提として書かれています。Editionがあります。これでほぼ同書内と同じ学習環境が構築できるので、その方法を紹介しておこうと思います。(というか、忘れないように自分用のメモという意味合いが強かったり。)前置きが長くなりましたが、この記事は、「マシン語やアセンブラにちょっと触れてみたい/学習を始めてみたいけど、何をどうしたらいいかさっぱり分からない......」という人向けです。2017」があります。Editionを使う際にはいくつかライセンスの問題がありますが、個人が学習用に使うならば何も問題ありません。具体的なダウンロード手順等は省略します。MSのサイトに行けば普通に見つかりますね。インストールの際に、インストールするオプションに注意が必要なので以下で説明します。Editionでは、マシン語学習用の環境であるWin32コンソールアプリケーションを作るモジュール(CLIサポート)がデフォルトではインストールされません。このため、インストール時にオプションを選択する必要があります。Studioのインストーラを起動すると、下図のインストールするコンポーネントの選択画面に移ります。ここでまず、「C++によるデスクトップ開発」のチェックが外れているので、クリックして選択します。上図で、右側の「C++/CLIサポート」にもチェックを入れておきます。これをチェックしておかないと、Win32コンソールアプリケーションが作成できません。これで「インストール」を押せば、必要なモジュールが入った状態でインストールできます。インストールには6GBちょっと必要と、なんとまぁ富豪的なマシン語の学習環境です(笑。アプリケーション」が選べるようになっていることを確認してください。「はじめて読むPentium」の学習環境は、これでひとまずインストール完了です。2017で追うやり方を紹介します。マシン語入門編」を持っていることを前提としているので、持っていない人はまず買ってください。ソースコードの書き方リスト5-1は、以下のようなコードです。C++で書いてみましょう。マシン語入門編」リスト5-1)まずデータ部は、グローバル変数となるためmain関数の外で定義します。C++のインラインアセンブラの機能を利用して記述します。いうブロックを作ります。}インラインアセンブラでリスト5-1を記述してみたのが以下の図です。本の指示通りにブレークポイントも設定してあります。2003の頃から操作に変わりは無いので、本の通りに設定できます。デバッグウィンドウメニューの「デバッグ」→「デバッグの開始」後、「デバッグ」→「ウィンドウ」→「レジスタ」(Ctrl+Alt+G)でレジスタの内容が確認できます。レジスタの子ウィンドウは自由に移動できるので、タイトルバーをクリックして掴んで、しっくりくる場所に移動してください。通りに、「自動変数」のウィンドウに入れた例です。メモリの内容も確認してみましょう。World!)のアドレスは0x00a79000です。World!」が格納されています。ここで、「!」のASCIIコードは0x21であることを思い出してください。アドレス0x00a79000から12バイトめの「21」の後ろは0x00となっており、文字列が終端されていることが分かります。(この例では、他のアドレスも0x00が多いのでちょっと分かりにくいけど)。本の中では、「混合モード」でマシン語を確認しようと書かれています。2017では「逆アセンブル」で確認することができます。ここでは、以下のようなシンプルなC言語のソースを書きます。0;}ブレークポイントを設定してデバッグを開始したら、「デバッグ」→「ウィンドウ」→「逆アセンブル」(Ctrl+Alt+D)としてみてください。すると下図のように、C言語のソースがアセンブラ言語に展開された混合モードで表示されます。この状態で、逆アセンブルウィンドウで右クリックして「コードバイトの表示(Y)」を選択すると、次のように各行のニーモニックに対応するマシン語が表示されます。2017)で学習する環境について解説しました。操作がこれだけ分かっていれば、同書を読み進めることができる(はず)です。「はじめて読む」シリーズは、実は「はじめて読む486―32ビットコンピュータをやさしく語る」が、もっとも内容が濃く優れた良書、という評判が多いです。マシン語入門編」がいいかなというのが私の意見です。同書はタイトル通りまさに「マシン語入門」であって、「Pentium入門」ではありません。そのため中級者以上からは「内容が簡単すぎる」とあまり評判がよろしく無いようですが、逆に初心者向けとしては非常にシンプルで分かりやすい本です。2017で手を動かして色々試すことができますから、マシン語への入り口へはぴったりだと私は思います。関する罪」の情報公開請求をしました月別アーカイブはてなブログをはじめよう!ozumaさんは、はてなブログを使っています。ブログを報告するスターをつけました引用をストックしましたストック一覧を見る閉じる引用するにはまずログインしてくださいログイン閉じる引用をストックできませんでした。再度お試しください閉じる限定公開記事のため引用できません。