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

24 lines
1.3 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.

# Stanford CS143: Compilers
## 课程简介
- 所属大学Stanford
- 先修要求:计算机体系结构
- 编程语言Java 或 C++
- 课程难度:🌟🌟🌟🌟🌟
- 预计学时150 小时
斯坦福的编译原理课程,设计者开发了一个 Class-Object-Oriented-Language简称 COOL 语言。这门课的核心就是通过理论知识的学习,为 COOL 语言实现一个编译器,将 COOL 高级语言编译为 MIPS 汇编并在 Spim 这个 MIPS 模拟器上成功执行。
理论部分基本按照龙书的顺序覆盖了词法分析、语法分析、语义分析、运行时环境、寄存器分配、代码优化与生成等内容,实践部分则相应地分为词法分析、语法分析、语义分析、代码生成四个阶段,难度循序渐进,并在优化部分给学生留下了很大的设计空间。
## 课程资源
- 课程网站:<http://web.stanford.edu/class/cs143/>
- 课程视频:<https://www.bilibili.com/video/BV17K4y147Bz>
- 课程教材:龙书
- 课程作业5 个书面作业 + 5 个编程作业带你实现一个编译器
## 资源汇总
@skyzluo 在学习这门课中用到的所有资源和作业实现都汇总在 [skyzluo/CS143-Compilers-Stanford - GitHub](https://github.com/skyzluo/CS143-Compilers-Stanford) 中。