科目概要

対象年度
2005
教育課程名
夜間コース 主専門教育課程 学科別科目
授業科目名
コンピュータ言語
Subject Name
Computer Language
単位数
1
必修・選択の別
選択
対象学科・学年
電気電子工学科 3年
開講時期
前期
授業方法
講義
担当教員
徳田功(TOKUDA, Isao)(情報工学科・ヒューマン情報学講座(Human Informatics 講座))
教員室番号
V616
連絡先(Tel)
46-5431
連絡先(E-Mail)
tokuda@csse.muroran-it.ac.jp


シラバス

授業のねらい
コンピュータ言語とその構文解析の方法,および簡単なコンパイラを作成するのに必要な技法について学ぶ。
授業の目標
1.オートマトンと形式言語の基礎を理解する。
2.コンピュータ言語の構文解析理論とその実現法について理解する。
授業計画
 第1週  コンピュータ言語処理系の流れ:
コンピュータ言語処理系とその流れを概観する。
 第2週  オートマトン1:
決定性有限オートマトンおよび(空動作のある)非決定性有限オートマトンの基本動作とその受理言語について理解する。
 第3週  オートマトン2:
非決定性有限オートマトンから決定性有限オートマトンを構成する方法について理解する。
 第4週  オートマトン3:
決定性有限オートマトンから最簡形を構成する方法について理解する。
 第5週  形式文法と形式言語:
形式文法,特に正規文法と文脈自由文法について学び,対応する言語のクラスを理解する。
 第6週  正規表現と正規言語:
正規表現の帰納的定義を学び,対応する正規言語について理解する。
 第7週  正規表現とオートマトン:
正規表現に対応する有限オートマトンを構成する方法について学ぶ。
 第8週  BNF記法:
文脈自由文法を記述するメタ言語であるBNF記法を理解する。
 第9週  字句解析:
BNF記法による字句の定義を行う。字句の構文が正規表現にあたり,字句解析が有限オートマトンの構成に対応することを理解する。
 第10週  構文解析1:
構文解析について概観し,上昇型解析と下降型解析の違いについて理解する。
 第11週  構文解析2:
下降型構文解析の代表的な方法であるLL解析について学ぶ。
 第12週  構文解析3:
LL解析表の作り方を習得する。
 第13週  構文解析4:
LL文法と左再帰性,後戻りの問題について学ぶ。
 第14週  中間言語:
様々の種類の中間言語について学ぶ。
 第15週  機械語の生成:
計算機アーキテクチャの特徴,及びその制御構造に対するコード生成について学ぶ。
教科書及び教材
教科書は特に指定せず,講義ノートがテキストとなるようにする。
参考書
ホップクロフト他著「オートマトン 言語理論 計算論I」サイエンス社 1984
エイホ他著「コンパイラ 原理・技法・ツール」サイエンス社 1990
佐々政孝著「プログラミング言語処理系」岩波書店 1989
辻野嘉宏著「コンパイラ」昭晃堂 1996
疋田輝雄・石畑清著「コンパイラの理論と実現」共立出版 1988
成績評価方法
定期試験 60%
レポート 40%
履修条件等
C言語等の計算機言語の経験があること。
教員からのメッセージ
毎回の講義をしっかりと理解し,レポート問題にまじめに取り組むようにして下さい。
その他