Skip to content

词法分析原理与算法

本课程由南京大学计算机学院冯洋老师及其团队主讲,聚焦于编译技术中的词法分析模块,并结合现代系统编程语言 Rust 进行实践教学。课程以 Rust 语言为核心工具,系统讲解词法分析的基本原理、正则表达式、有限自动机(NFA/DFA)的构建与转换,以及词法分析器的实现方法。

课程内容涵盖词法单元(Token)的识别与规约、状态转换图的设计、正则表达式的应用,以及如何通过 pest crate 这一 Rust 生态中的解析器生成工具,实现 SysY 语言的词法分析器。SysY 语言作为 C 语言的子集扩展,支持整型、浮点型、数组、常量等特性,是编译系统竞赛的常用语言。

通过本课程的学习,学生将掌握词法分析的核心算法与工程实现技巧,理解 Rust 语言在系统编程中的优势(如内存安全、零成本抽象、高性能并发),并能够独立完成一个具备错误处理、注释过滤、多进制转换等功能的词法分析器。课程强调理论与实践结合,配有多个真实案例和测试用例,助力学生深入理解编译前端的工作机制,为后续语法分析、语义分析等模块打下坚实基础。

视频讲解

00:00 / 00:00

课件

/ 1
/ 1