内容紹介
豊富な問題と演習課題と実例により確実に理解できる!
(株)昭晃堂から発行していた書目をオーム社より再発行するもの.
プログラミングの基礎知識のある人を対象として,
コンパイラを構成するアルゴリズムの理解,
コンパイラ作成支援ツールの理解,
コンパイラを自分で作成できる,
までを詳しく解説した学部教科書.豊富な問題と演習課題と実例により確実に理解できる.
目次
主要目次
1 言語処理系とは
2 形式言語と形式文法
3 字句解析
4 構文解析
5 型の検査と表管理
6 実行時環境
7 中間コード生成
8 目的コード生成
9 最適化とそのほかの話題
詳細目次
1 言語処理系とは
1.1 コンパイラの役割
1.2 コンパイラの形式とそのほかの変換系
1.3 コンパイラの仕様と実現
1.4 コンパイラ作成のための環境
1.5 コンパイラの基本構造
演習問題
2 形式言語と形式文法
2.1 アルファベット,語(文),言語
2.2 正規表現と正規言語
2.3 有限オートマン
2.4 文脈自由文法と文脈自由言語
2.5 正規表現,有限オートマン,文脈自由文法の関係
2.6 言語設計者,コンパイラ作成者,プログラマのための文法の記述法
演習問題
3 字句解析
3.1 マイクロ構文とEBNF記法による字句の定義
3.2 非決定性有限オートマンへ
3.3 決定性有限オートマンへ
3.4 DFAの状態最小化
3.5 字句解析系
3.6 字句解析系の例
演習問題
4 構文解析
4.1 下向き構文解析
4.2 予測的構文解析(LL構文解析)
4.3 移動還元構文解析(上向き構文解析)の概要
4.4 演算子順位構文解析
4.5 LR構文解析アルゴリズム
4.6 SLR(1)構文解析表
4.7 正準LR(1)構文解析表
4.8 LALR(1)構文解析表
4.9 構文解析の例
演習問題
5 型の検査と表管理
5.1 型の簡単な検査法
5.2 型式の等価性
5.3 型変換
5.4 関数と演算子の多重定義
5.5 記号表
5.6 スコープルールとその管理
5.7 型の検査の例
5.8 情報の抽出と表管理の例
演習問題
6 実行時環境
6.1 静的と動的
6.2 駆動レコード
6.3 変数の参照法
6.4 記憶位置情報の決定
6.5 手続き呼び出しの実現
6.6 引数の引き渡し
6.7 動的変数領域の管理法
演習問題
7 中間コード生成
7.1 中間言語
7.2 制御文
7.3 代入文と式
7.4 論理式
7.5 文と式のコード生成の例
演習問題
8 目的コード生成
8.1 コード生成の難しさ
8.2 目的機械のモデル
8.3 基本ブロックとフローグラフ
8.4 簡単なコード生成
8.5 バックパッチング
8.6 RISCプロセッサについて
演習問題
9 最適化とそのほかの話題
9.1 最適化の目的
9.2 覗き穴最適化
9.3 大域的最適化の概要
9.4 データフロー解析の概要
9.5 誤り処理
演習問題
付録A
付録B
参考文献
索引
続きを見る