山梨大学電子シラバス>検索結果一覧>授業データ |
授業科目名
|
担当教員
|
|||||||||||||||||
形式言語とコンパイラ
|
鍋島 英知
|
|||||||||||||||||
時間割番号
|
単位数
|
コース
|
履修年次
|
期別
|
曜日
|
時限
|
||||||||||||
TCS306 | 2 | (未登録) | 3 | 後期 | 火 | II | ||||||||||||
[概要] | ||||||||||||||||||
記号を扱うコンピュータの論理モデルであるオートマトンと形式言語について学び,その重要な応用であるコンパイラの構成法について学習する.計算の記述とその計算機による実現は情報処理の基礎であり,本科目ではその理論的背景と実践的技術について学ぶ. | ||||||||||||||||||
[具体的な達成目標] | ||||||||||||||||||
1.字句解析における正規表現と有限オートマトンの関係を理解できる(レベル2) 2.文脈自由文法に基づく構文の定義ができる(レベル2) 3.下向き及び上向き構文解析の方法を理解できる(レベル1) 4.コンパイラコンパイラを用いて字句解析器・構文解析器が実装できる(レベル2) 5.インタプリタの原理を理解できる(レベル2) |
||||||||||||||||||
[必要知識・準備] | ||||||||||||||||||
・離散数学における集合,グラフ,関係に関する知識を有すること ・計算機アーキテクチャに関する基本的な知識を有すること ・アルゴリズムとデータ構造に関する基本的な知識とプログラミング能力を有すること |
||||||||||||||||||
[評価方法・評価基準] | ||||||||||||||||||
|
||||||||||||||||||
[教科書] | ||||||||||||||||||
(未登録) | ||||||||||||||||||
[参考書] | ||||||||||||||||||
[講義項目] | ||||||||||||||||||
第1回:コンパイラの概要,形式言語 第2回:字句解析 (1) 正規表現と有限オートマトン (DFA, NFA) 第3回:字句解析 (2) ε-NFA, DFA と NFA の等価性 第4回:字句解析 (3) NFA-ε-NFA の等価性,正規表現とε-NFA の等価性 第5回:構文解析 (1) 文脈自由文法 第6回:構文解析 (2) 下向き構文解析と上向き構文解析 第7回:中間評価(総括とまとめ) 第8回:コンパイラコンパイラ演習 第9回:変数の実現 第10回:構文木の構築 第11回:制御構文の実装 第12回:関数の実装 第13回:クロージャの実装 第14回:オブジェクト指向言語への拡張 第15回:最終評価(総括とまとめ) |
||||||||||||||||||
[教育方法] | ||||||||||||||||||
・講義前半は座学形式であるが,講義中に多数の簡単な演習問題に取り組むことで理解を深める. ・講義後半は演習形式であり,コンパイラコンパイラを利用してインタプリタ言語の作成に取り組む. |
||||||||||||||||||
[JABEEプログラムの学習・教育目標との対応] | ||||||||||||||||||
(未登録) | ||||||||||||||||||
[その他] | ||||||||||||||||||
・学生の理解度に合わせて,内容を変更する場合がある. |