19 lines
1.2 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?p=17&spm_id_from=pageDriver)
- 课程教材:龙书
- 课程作业5个书面作业 + 5个编程作业带你实现一个编译器
## 资源汇总
我在学习这门课中用到的所有资源和作业实现都汇总在[这个Github仓库](https://github.com/skyzluo/CS143-Compilers-Stanford)中。