From 5de04318d2806ff948e32d5a3b479f0a7742aaf7 Mon Sep 17 00:00:00 2001 From: gitee-bot Date: Fri, 19 Sep 2025 05:57:00 +0000 Subject: [PATCH] Update README.md --- README.md | 78 +++++++++++++++++++++++++++++++++++++++++-------------- 1 file changed, 59 insertions(+), 19 deletions(-) diff --git a/README.md b/README.md index 2d6df42..8e2d578 100644 --- a/README.md +++ b/README.md @@ -1,19 +1,59 @@ -# 编译原理讲稿 by 赵靖老师 -课程学时 32+24 -##理论课32 -第1讲:编译引论 -第2讲:字符串和语言 -第3讲:FA与NFA -第4讲: DFA与NFA的确定化 -第5讲: DFA最小化算法 -第6讲: 文法和正规文法 -第7讲:文法和语言分类 - -##实验课 24,共7个实验 -实验1:删除C/C++程序的注释 -实验2~3:词法分析实验 -实验4:递归下降程序设计 -实验5:LL(1)文法实验 -实验6:LR(0)文法实验 - - +# 编译原理实验项目 + +本项目包含多个实验,用于学习和实践编译原理中的关键概念和技术。 + +## 实验列表 + +### 实验1:删除C/C++程序的注释 +- **文件**: `experiments/exp01/exp01_uncomment.cpp` +- **功能**: 实现删除C/C++程序中的注释功能。 + +### 实验2~3:词法分析实验 +- **文件**: `experiments/exp02/exp02.cpp` +- **功能**: 实现基本的词法分析器,识别关键字、标识符、常量、运算符等。 + +### 实验4:递归下降程序设计 +- **文件**: `experiments/exp04/exp04.cpp` +- **功能**: 实现递归下降分析器,用于语法分析。 + +### 实验5:LL(1)文法实验 +- **文件**: `experiments/exp05/exp05.cpp` +- **功能**: 实现LL(1)文法的分析器。 + +### 实验6:LR(0)文法实验 +- **文件**: `experiments/exp06.cpp` +- **功能**: 实现LR(0)文法的分析器。 + +### 实验7:中间代码生成 +- **文件**: `experiments/exp07.cpp` +- **功能**: 实现中间代码生成器,生成四元组表示的中间代码。 + +## 使用方法 + +1. **克隆仓库**: + ```bash + git clone https://gitee.com/webturing/CompilingPrinciple.git + cd CompilingPrinciple + ``` + +2. **编译实验代码**: + ```bash + g++ experiments/exp01/exp01_uncomment.cpp -o uncomment + ``` + +3. **运行实验代码**: + ```bash + ./uncomment + ``` + +## 贡献指南 + +欢迎贡献代码和文档。请遵循以下步骤: +1. Fork 仓库 +2. 创建新分支 +3. 提交更改 +4. 创建 Pull Request + +## 许可证 + +本项目使用 MIT 许可证。详情请查看 `LICENSE` 文件。 \ No newline at end of file -- Gitee