アセンブリ・プログラミングは、コンピューター・プログラマーがその技術を学ぶ際に、しばしば重要な出発点となります。アセンブリ言語(ASMとしても知られている)は、コンピュータやその他のデバイス用のプログラミング言語であり、追加機能を提供するより高度な言語と比較すると、一般的に低レベルの変種と考えられている。コードを書いたら、アセンブラがそれをマシンコード(1と0)に変換する。プロセッサの複雑化に伴い、アセンブリ・プログラミングの用途は限られてきていますが、アセンブリはスタンドアロンの実行ファイルやデバイス・ドライバのコードを書くなど、さまざまな用途で役立っています。
知っておくべきこと
- A86、NASM、GNU、またはMASM(Microsoft Macro Assembler)から始めてみてください。これらのアセンブラはそれほど複雑な機能を実行しないため、初心者がアセンブラになじみやすくなります。
- アセンブラとIDEをダウンロードしてインストールする。例えば、MASMをダウンロードすることができます。
- コードの書き方に慣れ、練習する。アセンブリ言語には、実行命令、アセンブラ指令、マクロの3つの主要な文があります。
アセンブリ言語に慣れる
-
アセンブリ言語について読もうコードを書こうとする前に、まず言語そのものを理解することをお勧めします。教科書からオンラインガイドまで、入手可能なリソースは数多くある。
-
基本的な用語を覚えましょう。例えば、IDE(統合開発環境)は、テキスト編集、デバッグ、コンパイルなどの処理を行うコーディング・インターフェースを提供するものだということを知っておきたい。また、プログラムコードに関連する数値を格納するのが「レジスタ」であるなど、アセンブリが実際に機能する仕組みについても理解を深めておくとよいだろう。用語の理解を深めることで、コードを書くプロセスそのものを学びやすくなります。
-
アセンブラが自分に合っているかどうかを判断する。プログラミング言語には、アセンブラよりもはるかに高機能なものも含め、数多くのものがあることを覚えておいてほしい。しかし、電話のファームウェアや空調制御システム用のスタンドアロン実行ファイルの作成から、特定のプロセッサ固有の命令の開発まで、アセンブラが有用なアプリケーションはまだまだある。
-
どのアセンブラを使うかを決める。A86、NASM、GNU などのアセンブラは一般にそれほど複雑な機能を実行しないので、初心者にとっては適切な出発点かもしれません。どのアセンブラも少しずつ動作が異なるため、以降の命令では MASM(Microsoft Macro Assembler)-Windowsオペレーティングシステムで動作する基本的なアセンブラ-を使用していると仮定して説明します。これはx86アセンブリ言語とIntel構文を使用します。
アセンブラとIDEのダウンロードとインストール
-
アセンブラをダウンロードします。MASMの最新バージョンはVisual Studio Enterprise 2015(多くのツールを含む包括的なIDE)に含まれていますが、より基本的なオリジナルバージョン(MASM 8.0)を見つけることができます。MASM 8.0は無料でダウンロードできます。Flat Assemblerのように、Windows、DOS、Linuxを含む複数のOSで使用できるアセンブラもある。その他のアセンブラ(Netwide Assembler (NASM)やGNU Assembler (GAS)など)はMac OSでも動作します。
- MASM 8.0をダウンロードするには、このステップで参照しているページの上部にあるダウンロードボタンをクリックしてください。
- システム要件は選択するアセンブラによって異なりますが、MASM 8.0にはWindows 2000 Service Pack 3、Windows Server 2003、またはWindows XP Service Pack 2が必要です。
- MASM 8.0をインストールするには、事前にVisual C++ 2005 Express Editionをダウンロードしてインストールしておく必要もあります。
-
IDEをダウンロードしてください。WinAsm download」で検索してWinAsm IDEを見つけ、インストールしてください。使っているプログラミング言語によっては、他のIDEの方が適しているかもしれません。よく使われる選択肢の1つにRadAsmがあります。
-
MASM 8.0をインストールします。プログラムがダウンロードされたら、実行をクリックしてすぐにインストールを始めることができます。あるいは、後日インストールすることもでき、その場合は Save をクリックしてください。実行]をクリックすると、MASM 8.0が"[Visual C++ Express]◆bin "ディレクトリにインストールされ、ml.exeというラベルが付けられます。
-
IDEをインストールします。WinAsmのダウンロードが完了したら、ファイルを解凍して "c:◆program files "フォルダにコピーするだけです。デスクトップにショートカットを置いておくとアクセスしやすくなります。
-
IDEの設定まず、WinAsmプログラムを起動します。デスクトップにショートカットを置いた場合は、それをダブルクリックするだけです。他のアセンブラやIDEを使っている場合は、このプロセスが異なることに注意してください。
-
WinAsmをMASM 8.0に統合します。まずWinAsmの「ツール」タブをクリックし、同タブから「オプション」を選択し、最後に「ファイルとパス」タブを選択します。そして、最初の3つの項目(参照パス)をMASMのインストールフォルダに変更します。完了したら、OKをクリックします。
- Files and Pathsタブの情報を調整すると、最初の3つの項目は以下のようになります。Binary PathはC:゙Masm32゙Bin、Include PathはC:゙Masm32゙Include、Library PathはC:゙Masm32゙Binです。
コードを書く
-
コードを書き始めます。まずWinAsmを起動し、ファイルタブをクリックする。すると、いくつかのオプションが表示されます。これらのオプションには、コンソールアプリケーションと標準EXEが含まれています。例えば、GUI(グラフィカル・ユーザー・インターフェース)ベースのアプリケーションを作成しようとしている場合は、後者を選択します。
-
アセンブリのプログラム構造を使用します。典型的な構造としては、アーキテクチャを定義する行、初期化データや定数を含むデータセクション(section.data)、変数を宣言するBSSセクション(section.BSS)、実際のプログラムコードを配置するテキストセクション(section.text)があります。最後のセクションは、常にグローバルな _start 宣言で始まります。各シーケンスはコードのブロックとして知られています。
-
基本的なコマンドを理解する。アセンブリ言語には、実行可能命令またはインストラクション(これらはオペレーションコードを介してプロセッサに何をすべきかを指示する)、アセンブラ指令または擬似オペランド(これらはアセンブラにアセンブリ処理を記述する)、マクロ(これらはテキスト置換メカニズムとして機能する)の3種類のステートメントがある。
コメント
最新を表示する
NG表示方式
NGID一覧