科目名 コンパイラ
単位数 2.0
担当者 知能工学専攻 准教授 岩根 典之
履修時期 前期
履修対象 3年
概要 (授業形態:講義)コンパイラは人間にわかりやすいプログラミング言語で記述されたプログラムを機械語のプログラムに変換するプログラムである。本講義ではコンパイラにおける基本的な考え方や原理、および実現法について学ぶ。
科目の到達目標 コンパイラ設計上の注意点や工夫すべき点を理解するとともに、コンピュータ言語やオペレーティングシステムなど、コンピュータをより深く理解できるようになる。
・コンパイラの基本的な機能と構造を十分理解していること。
・コンパイラの基本機能の仕組みを理解していること。
・簡単なコンパイラの構成要素を設計(プログラミング)できること。
受講要件 コンピュータ基礎、プログラミング、データ構造とアルゴリズム、オートマトンと形式言語を履修していることが望ましい。
事前・事後学修の内容 事前・事後学修のためのプリント等を配付する。
講義内容 1 コンパイラの概要(プログラミング言語とその処理系)
2 プログラミング言語と文法
3 字句解析(正規表現と有限オートマトン)
4 字句解析(C言語による字句解析プログラム)
5 字句解析(Lexによる字句解析プログラム)
6 構文解析とは
7 構文解析(再帰的下向き構文解析)
8 構文解析(LR構文解析の基本)
9 構文解析(LR構文解析の実際,C言語による構文解析プログラム)
10 構文解析(Yaccによる構文解析プログラム)
11 意味解析
12 コードの実行環境
13 コード生成(算術式)
14 コード生成(論理式)
15 まとめ(最適化)
評価方法 受講態度とレポート、期末試験で評価する(受講態度/小テストなどとレポート20%、期末テスト80%)。
成績の評価基準は、学生HAND BOOK記載のとおりとする。
教科書等 教科書:湯浅太一著「コンパイラ」(オーム社)
参考書:A.V.Aho他著、原田賢一訳「コンパイラ原理・技法・ツール」(サイエンス社)
佐々政孝著「プログラミング言語処理系」(岩波書店)
中田育男著「コンパイラの構成と最適化」(朝倉書店)
担当者プロフィール オフィス・アワーを設定しています(時間外も可能な限り受付けます)。
学習システムのモデル化や設計に関する研究に従事。
備考 【教職】高一種免(情報)
授業で取り上げられる考え方やアルゴリズムは実際にプログラミングして動作を確かめること。