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