P0500500

言語処理系

Programming Language Processor

開講部

システム理工学部

開講学科

電子情報システム学科

開講学年

3年次

開講時期

前期

単位数

2

単位区分

選択

系列区分

専門

講義区分

講義
准教授鈴木徹也この授業の2015年度のアンケートを参照

授業の概要

言語処理系の1つであるコンパイラは現在のソフトウェア開発に欠かせない基本的な道具である。本講義ではコンパイラに用いられている理論と技術の基礎を学ぶ。適宜演習を行い理解を深める。

達成目標

1.言語処理系の理論的基礎として正規表現と文脈自由文法を学び、字句と文法の定義方法と解析方法とを理解する。
2.高級プログラミング言語の仮想機械コードへの変換方法と仮想機械の仕組みとを理解する。
3.簡単なコンパイラの拡張を行えるようになる。

授業計画


【授業計画】【授業時間外課題(予習および復習を含む)】
1.以下の項目について講義と演習を行う。
コンパイラの概要
教科書第1章
2.コンパイラの簡単な例 教科書第2章
3.文法と言語-1 バッカス記法、構文図式、文法と言語の形式的定義 教科書第3章P29-P37
4.文法と言語-2 解析木、高級プログラミング言語PL/0‘の文法 教科書第3章P37-P45
5.演習  PL/0‘言語プログラミング、PL/0‘仮想マシン用アセンブリ言語プログラミング 第4回の復習(特にPL/0'言語の文法)
6.字句解析-1 文字読み取り、字句読み取り 教科書第4章P47-P54
7.字句解析-2 正規表現、非決定性有限オートマトン 教科書第4章P54-P58
8.字句解析-3 決定性有限オートマトン、状態数の最小化 教科書第4章P59-P73
9.下向き構文解析-1 LL(1)文法 教科書第5章P75-P88
10.下向き構文解析-2 再帰的下向き構文解析プログラム 教科書第5章P88-P98
11.演習 正規表現から非決定性有限オートマトン、決定性有限オートマトンへの変換 第6回から第8回の復習
12.意味解析 教科書第6章
13.誤りの処理 教科書第7章
14.仮想マシンと通訳系 教科書第8章
15.これまでのまとめと期末試験 これまでの学習内容の復習

評価方法と基準

期末試験50%, レポート50%の配分により評価し、総合点60%以上を合格とする。

教科書・参考書

中田育男著、新コンピュータサイエンス講座「コンパイラ」、オーム社、ISBN4-274-13013-4

履修登録前の準備

履修前に修得を希望する科目:オートマトンと言語理論、データ構造とアルゴリズム、情報処理II, 情報処理演習II

オフィスアワー、質問・相談の方法

水曜5限
担当者と連絡がつかない場合はメール

環境との関連

環境に関連しない科目

最終更新 : Thu Oct 22 07:06:06 JST 2015