コンパイラ

科目基礎情報

学校 久留米工業高等専門学校 開講年度 2017
授業科目 コンパイラ
科目番号 0311 科目区分 専門 / 必修
授業形態 講義 単位の種別と単位数 履修単位: 1
開設学科 制御情報工学科 対象学年 5
開設期 後期 週時間数 2
教科書/教材 山下義行 「コンパイラ入門」(サイエンス社)
担当教員 中野 明

到達目標

・形式言語の概念について説明できる。
・オートマトンの基本的な概念について説明できる。
・コンパイラの基本的な役割と仕組みについて説明できる。

ルーブリック

理想的な到達レベルの目安標準的な到達レベルの目安未到達レベルの目安
評価項目1形式言語の概念について説明できる。形式言語の概念についてほぼ説明できる。形式言語の概念について説明できない。
評価項目2オートマトンの基本的な概念について説明できる。オートマトンの基本的な概念についてほぼ説明できる。オートマトンの基本的な概念について説明できない。
評価項目3コンパイラの基本的な役割と仕組みについて説明できる。コンパイラの基本的な役割と仕組みについてほぼ説明できる。コンパイラの基本的な役割と仕組みについて説明できない。

学科の到達目標項目との関係

JABEE C-1 説明 閉じる

教育方法等

概要:
プログラムを機械語に変換する技術であるコンパイラは、コンピュータサイエンスにおいて最も洗練され、成熟された技術の一つである。コンパイラの内部で行われている形式言語の処理過程、オートマトンによる状態遷移過程の図式化の手法などを学び、情報処理分野の知見を広げることを授業の目的とする。
授業の進め方・方法:
参考図書、配布プリントなどを用いた講義を行う。
注意点:
点数分配:中間試験50%、期末試験50%とする。
評価基準:60点以上を合格とする。
再試:再試を行う。

授業計画

授業内容 週ごとの到達目標
後期
3rdQ
1週 プログラミング言語の歴史と処理系
プログラミング言語の歴史や処理系統の違いについて理解する。
2週 コンパイラの全体構成(フロントエンド)
フロントエンドについて理解する。
3週 コンパイラの全体構成(バックエンド)
バックエンドについて理解する。
4週 字句解析(トークン、正規表現)
字句解析の基本的な流れについて理解する。
5週 字句解析(オートマトン)
オートマトンを使った処理の流れについて理解する。
6週 字句解析器生成系lex
lexの基本的な役割を理解する。
7週 構文解析(文脈自由文法)
文脈自由文法について理解する。
8週 構文解析(構文木)
構文木について理解する。
4thQ
9週 下向き構文解析(空規則を含まない場合)
下向き構文解析の処理の流れを理解する。
10週 下向き構文解析(空規則を含む場合)
下向き構文解析の処理の流れを理解する。
11週 下向き構文解析(文法変換)
下向き構文解析の処理の流れを理解する。
12週 構文解析器生成系yacc(yaccの記述)
yaccの基本的な役割を理解する。
13週 構文解析器生成系yacc(yaccの実行)
yaccの実行について理解する。
14週 中間木
中間木について理解する。
15週 コンパイラ
コンパイラの役割や仕組み処理の流れについて理解する。
16週

モデルコアカリキュラムの学習内容と到達目標

分類分野学習内容学習内容の到達目標到達レベル授業週
専門的能力分野別の専門工学情報系分野システムプログラム形式言語の概念について説明できる。2後1,後2,後3,後4
オートマトンの概念について説明できる。2後5,後6
コンパイラの役割と仕組みについて説明できる。2後1,後2,後3,後4,後6,後7,後8,後9,後10,後11,後12,後13,後14,後15

評価割合

試験発表相互評価態度ポートフォリオその他合計
総合評価割合10000000100
基礎的能力0000000
専門的能力10000000100
分野横断的能力0000000