実験4 (コンパイラ)
  • Nav
  • News
  • Exercises
    • 1. 拡張構文
    • 2. フロントエンド
    • 3. インタプリタ・型推論
    • 4. recur式の検査
    • 5. 正規形への変換
    • 6. クロージャ変換
    • 7. 平滑化
    • 8. 仮想機械コード生成
    • 9. ARMコード生成
    • 10. バックエンドの移植
    • 11. データフロー解析
    • 12. レジスタ機械コード生成
    • 13. ARMコード生成 その2
    • 14. 最適化
  • Resources
    • 配布コード一式
    • Raspberry Pi 3 Model Bセットアップ資料
    • 2015年度講義「コンパイラ」講義スライド
    • VMインタプリタ機能拡張
    • ARMシミュレータ機能拡張
    • 講義「プログラミング言語処理系」サポートページ
    • OCaml公式ページ
  • Contact
    • コンパイラ (ver.2.0)
    • インフォメーション
      • トップページ
      • お知らせ
      • 最終報告会
      • 速度コンテスト
      • FAQ
    • 前付け
      • 表紙
      • 目次
      • 課題リスト
      • 更新履歴
      • 謝辞
    • 1 はじめに
      • 導入
      • 1.1 MiniMLコンパイラのユーザインタフェース
      • 1.2 MiniMLコンパイラの全体構成
    • 2 フロントエンド
      • 導入
      • 2.1 言語仕様
      • 2.2 構文解析
      • 2.3 recur式の検査
    • 3 正規化
      • 導入
      • 3.1 正規形
      • 3.2 正規形への変換
    • 4 クロージャ変換
      • 導入
      • 4.1 準備
      • 4.2 組によるクロージャ表現
    • 5 仮想機械
      • 導入
      • 5.1 平滑化
      • 5.2 仮想機械コードへの変換
    • 6 コード生成
      • 導入
      • 6.1 ARM命令セット
      • 6.2 呼出し規約
      • 6.3 コード生成
      • 6.4 実行環境
    • 7 最適化
      • 導入
      • 7.1 データフロー解析
      • 7.2 生存変数解析モジュール
      • 7.3 レジスタ割付け
      • 7.4 最適化
    • 付録
      • A 再帰的な階乗計算プログラムのコンパイル例
      • B 課題5のための追加ヒント

    お知らせ

    This year's posts

    • 16 Nov速度コンテストの結果発表
    • 13 Nov速度コンテストについて
    • 12 NovARMシミュレータの修正
    • 09 Nov最終報告会について
    • 09 NovARMの乗算命令の説明の修正
    • 25 Octラズパイセットアップ資料の更新
    • 20 OctARMシミュレータ更新
    • 11 Octレポートの提出範囲の修正
    • 02 Oct課題の構成変更
    • 23 Sepホームページを立ち上げました


    ©2018 Seiji Umatani. All rights reserved.
    Site last generated: Nov 16, 2018