cs-self-learning/docs/编译原理/USTC-Compilers.md

23 lines
1.6 KiB
Markdown
Raw Blame History

This file contains ambiguous Unicode characters

This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.

# USTC: Principles and Techniques of Compiler
## 课程简介
- 所属大学:中国科学技术大学
- 先修要求数据结构、计算机系统基础、C++ 编程基础
- 编程语言C++
- 课程难度:🌟🌟🌟🌟
- 预计学时100小时
这门课程的理论部分内容广泛,既涵盖了传统编译原理课程的词法分析、语法分析、语法制导翻译、中间代码翻译,又覆盖了运行时管理、机器无关与面向机器的代码优化。实验部分则提供了 C++ 语言编写的Cminusf编译器框架代码于6个实验中逐步构建一个具备现代完整流程的编译器。与其他编译原理课程的实验不同的是本课程的实验采用现代LLVM的子集作为中间代码更具前瞻性同时包括了后端代码的生成和中间代码优化的部分堪称国际一流的编译原理课程。
- 课程实验使用脚本提供全面的自动化测试,并于课程主页提供了完整的教程。
- 课程包含全套开源的课件、实验框架代码、实验教程,对初学者友好。
- 课程实验循序渐进,逐渐增加难度,能让不同基础的学生都有收获。
- 课程实验中Lab1使用Flex和Bison实现编译器前端Lab2实现LightIR(LLVM子集)中间代码生成Lab3实现后端代码生成龙芯汇编语言Lab4实现中间代码优化Lab5实现机器无关优化Lab6实现寄存器分配。
## 课程资源
- 课程网站:<https://ustc-compiler-principles.github.io/2023>
- 课程视频:<https://www.bilibili.com/video/BV1D7421N7c4>
- 课程教材:见课程网站
- 课程作业:<https://ustc-compiler-principles.github.io/textbook>