この教科書は、X86アセンブラ言語を用いたプログラミングを初心者向けに解説します。X86アセンブラ言語は、マイクロプロセッサの内部構造を理解し、直接的に命令を記述することで、高度な制御と高速な処理を実現できる低水準言語です。

本書では、X86アセンブラ言語の基本的な構文から、レジスタ、メモリ操作、論理演算、条件分岐、ループ処理、プロシージャ、関数呼び出し、割り込み処理、アセンブリ言語とC言語の連携など、幅広いトピックを網羅しています。

目次

編集
基本的なFAQ

構文とアセンブラ

編集
x86アセンブラとは
GAS構文
MASM構文
HLA構文
FASM構文
NASM構文

x86の性質

編集
x86アーキテクチャとレジスタの説明
コメント
16、32、64ビット
組み込みデータ型
x86ファミリ

x86命令セット

編集
x86の命令
データ転送命令
制御転送命令
算術演算命令
論理演算命令
シフト命令とローテート命令
その他の命令
x86の割り込み

拡張命令

編集
拡張命令
浮動小数点
MMX
SSE
AVX、AVX2、FMA3、FMA4
3DNow!

x86の詳細

編集
x86の詳細
高水準言語
X86アセンブラ/機械語への変換 (※ 代替リンク :機械語)
プロテクト・モード
グローバル・ディスクリプタ・テーブル
割り込みの詳細
ブートローダ

x86チップセット

編集
x86チップセット
ダイレクト・メモリ・アクセス
プログラマブル割り込みコントローラ
プログラマブル・インターバル・タイマ
プログラマブル・パラレル・インターフェイス

組み込みとインターオペラビリティ

編集
WinAPIとのやりとり (Communicating directly with the operating system from the article GAS Syntax above)
Linuxとのやりとり
Calling Conventions (from the Embedded Systems book)
Calling Conventions (from the x86 Disassembly book)
標準Cライブラリ
Inline Assembler (Embedded Systems book)
Linked Assembler (Embedded Systems book)


翻訳元の「はじめに」

編集
はじめに


勉強に使えるサイト一覧

編集

アセンブラは文献が少ないため、日本語で解説のレベルの高いサイトをいくつか紹介する。

参考文献

編集
X86アセンブラ/参考文献
  NODES