1 数体系とコード
1-1 2進数と補数[2進数 2進数の加減算 補数 補数による減算 2進数の乗算 2進数の割算]
1-2 16進数[ビットとバイト 16進数 10進16進変換]
1-3 2進化10進数BCD[BCDの加算 BCDの減算]
1-4 論理演算[論理積 論理和 否定 排他的論理和 真理値表 半加算]
1-5 入出力コード
2 6809のハードウェア
2-1 マイクロコンピュータの構成[MPU メモリ 入出力ポート]
2-2 6809のレジスタ[アキュムレータ インデックス・レジスタ スタック・ポインタ プログラム・カウンタ ダイレクト・ページ・レジスタ コンディション・コード・レジスタ]
2-3 アドレッシングと命令語の形式[インプライド・アドレッシング 直接アドレッシング 拡張アドレッシング 即値アドレッシング 相対アドレッシング レジスタ・アドレッシング インデックスト・アドレッシング インデックスト・間接アドレッシング 拡張間接アドレッシング プログラム・カウンタ相対アドレッシング]
3 アセンブリ言語の文法
3-1 アセンブリ言語と機械語
3-2 アセンブリ言語プログラムの構成[コメント文 アセンブラ制御命令 実行命令 ラベル部 命令語 オペランド部 コメント部 文の書式]
3-3 アセンブラ制御命令(擬似命令)[NAM TTL ORG SETDP END EQU REG FCB FDB FCC RMB]
4 実行命令(1)−データ転送と演算
4-1 記号の説明
4-2 入出力と処理の終了
4-3 転送命令[LD ST EXG TFR]
4-4 算術演算命令[ADD ABX SUB ADC SBC DAA MUL NEG]
4-5 論理演算命令[AND OR EOR COM]
4-6 クリアと増減と符号拡張命令[CLR INC DEC SEX]
5 実行命令(2)−スタックとサブルーチン
5-1 スタック[LDS LDU STS STU PSH PUL]
5-2 サブルーチン[BSR LBSR JSR RTS]
6 実行命令(3)−シフトと回転
6-1 論理シフト[LSL LSR]
6-2 算術シフト[ASL ASR]
6−3 回転[ROL ROR]
7 実行命令(4)−比較と検査と分岐
7-1 比較命令[CMP]
7-2 検査命令[TST BIT]
7-3 フラグのセットとリセット[ANDCC ORCC]
7-4 分岐命令[無条件分岐と無分岐 単独フラッグの状態による分岐 ループの作り方 比較による分岐]
8 実行命令(5)−インデックス・レジスタ
8-1 ロードとストア[LDX LDY STX STY]
8-2 実行番地をロード[LEA]
8-3 位置独立プログラム
9 実行命令(6)−割込みとその他の命令
9-1 6809の割込み動作[ノンマスカブル割込み 高速割込み 割込みリクエスト リスタート 割込みベクタ SWI SWI2 SWI3 RTI]
9-2 CWAIとSYNC
10 プログラム・コレクション
10-1 16進数入力
10-2 16進数出力
10-3 10進数入力
10-4 10進数出力
10-5 パリティ・チェック
10-6 割算
10-7 符号付乗算
10-8 ソーティング[単純挿入法 番人]
10-9 クイック・ソート[再帰呼出し]
10-10 ハノイの塔
11 マクロ
11-1 マクロ定義[MACRO〜ENDM]
11-2 マクロ呼出し
11-3 引数
11-4 ラベルに引数を使用する
11-5 命令語の差し替え
11-6 繰り返し
12 応用プログラム−簡易電卓のシミュレーション
12-1 算術計算プログラムの設計
12-2 逆ポーランド語記法
12-3 細胞分け
12-4 算術式を逆ポーランド語記法へ
12-5 逆ポーランド語記法を解釈実行
12-6 プログラム・リスト
13 付録
13-1 FLEXアセンブラによるアセンブル
13-2 FLEXアセンブラのアセンブラ制御命令
13-3 命令セット
13-4 ポストバイト
13-5 命令コード・マップ
13-6 参考文献
1-1 2進数と補数[2進数 2進数の加減算 補数 補数による減算 2進数の乗算 2進数の割算]
1-2 16進数[ビットとバイト 16進数 10進16進変換]
1-3 2進化10進数BCD[BCDの加算 BCDの減算]
1-4 論理演算[論理積 論理和 否定 排他的論理和 真理値表 半加算]
1-5 入出力コード
2 6809のハードウェア
2-1 マイクロコンピュータの構成[MPU メモリ 入出力ポート]
2-2 6809のレジスタ[アキュムレータ インデックス・レジスタ スタック・ポインタ プログラム・カウンタ ダイレクト・ページ・レジスタ コンディション・コード・レジスタ]
2-3 アドレッシングと命令語の形式[インプライド・アドレッシング 直接アドレッシング 拡張アドレッシング 即値アドレッシング 相対アドレッシング レジスタ・アドレッシング インデックスト・アドレッシング インデックスト・間接アドレッシング 拡張間接アドレッシング プログラム・カウンタ相対アドレッシング]
3 アセンブリ言語の文法
3-1 アセンブリ言語と機械語
3-2 アセンブリ言語プログラムの構成[コメント文 アセンブラ制御命令 実行命令 ラベル部 命令語 オペランド部 コメント部 文の書式]
3-3 アセンブラ制御命令(擬似命令)[NAM TTL ORG SETDP END EQU REG FCB FDB FCC RMB]
4 実行命令(1)−データ転送と演算
4-1 記号の説明
4-2 入出力と処理の終了
4-3 転送命令[LD ST EXG TFR]
4-4 算術演算命令[ADD ABX SUB ADC SBC DAA MUL NEG]
4-5 論理演算命令[AND OR EOR COM]
4-6 クリアと増減と符号拡張命令[CLR INC DEC SEX]
5 実行命令(2)−スタックとサブルーチン
5-1 スタック[LDS LDU STS STU PSH PUL]
5-2 サブルーチン[BSR LBSR JSR RTS]
6 実行命令(3)−シフトと回転
6-1 論理シフト[LSL LSR]
6-2 算術シフト[ASL ASR]
6−3 回転[ROL ROR]
7 実行命令(4)−比較と検査と分岐
7-1 比較命令[CMP]
7-2 検査命令[TST BIT]
7-3 フラグのセットとリセット[ANDCC ORCC]
7-4 分岐命令[無条件分岐と無分岐 単独フラッグの状態による分岐 ループの作り方 比較による分岐]
8 実行命令(5)−インデックス・レジスタ
8-1 ロードとストア[LDX LDY STX STY]
8-2 実行番地をロード[LEA]
8-3 位置独立プログラム
9 実行命令(6)−割込みとその他の命令
9-1 6809の割込み動作[ノンマスカブル割込み 高速割込み 割込みリクエスト リスタート 割込みベクタ SWI SWI2 SWI3 RTI]
9-2 CWAIとSYNC
10 プログラム・コレクション
10-1 16進数入力
10-2 16進数出力
10-3 10進数入力
10-4 10進数出力
10-5 パリティ・チェック
10-6 割算
10-7 符号付乗算
10-8 ソーティング[単純挿入法 番人]
10-9 クイック・ソート[再帰呼出し]
10-10 ハノイの塔
11 マクロ
11-1 マクロ定義[MACRO〜ENDM]
11-2 マクロ呼出し
11-3 引数
11-4 ラベルに引数を使用する
11-5 命令語の差し替え
11-6 繰り返し
12 応用プログラム−簡易電卓のシミュレーション
12-1 算術計算プログラムの設計
12-2 逆ポーランド語記法
12-3 細胞分け
12-4 算術式を逆ポーランド語記法へ
12-5 逆ポーランド語記法を解釈実行
12-6 プログラム・リスト
13 付録
13-1 FLEXアセンブラによるアセンブル
13-2 FLEXアセンブラのアセンブラ制御命令
13-3 命令セット
13-4 ポストバイト
13-5 命令コード・マップ
13-6 参考文献