実践・C コンパイラ演習

実践・C コンパイラ演習

京都橘大学 工学部情報工学科 PBL科目「情報工学実践」

C 言語サブセットのコンパイラを段階的に作る演習教材。RISC-V RV64 を qemu で動かす。

この演習は、C 言語サブセットのコンパイラを動く状態を保ちながら段階的に作り上げます。 前半は Python でコンパイラの論理だけに集中し、後半は動く Python 版を参照実装として C へ移植します。生成したアセンブリは毎回 qemu で実行して確かめます。

重要

はじめての方は 進め方ガイド から読んでください。 環境の用意・全コマの一覧・到達目標をまとめてあります。

演習環境

starter・テスト・Docker 環境・参考実装は ZIP で配布しています。 資料はこのサイトを見てください。

通常回

先頭は番号を持たない準備回のコマ0(演習環境構築)で、初回授業の開始時点で終わっているのが目標である。続くコマ1〜15 の15コマが通常回の本体で、授業内では読解と着手までを行い、実装の完成は次回までの課題とする粒度に分けてある。末尾は自身の取り組みを発表する発表会(コマ16)で、これも通常回には含めない別枠である。準備のコマ0 と発表会のコマ16 は、進度に応じて指導する回のため資料は最小限にとどめてある。

発展課題

選択制の28トピック。回 ID の頭文字がカテゴリを表す。

一覧を見る →

仕様・参考文書

知りたいことから引く索引と、仕様・参考文書の本体。

一覧を見る →

補助ガイド

演習そのものではないが、あると進めやすくなるもの。

一覧を見る →

補助ツール

ブラウザで動く学習支援アプリです。環境構築の前でも触れます。