《编译原理》实验指导书2016(3)

2019-03-03 10:44

《编译原理》实验指导书

实验三. 自底向上语法分析 1. 实验目的

给出算符优先关系表的构造方法,将FIRSTVT集合和LASTVT集合的算法扩充成程序。

2. 实验准备

微机CPU P4以上,256M以上内存,安装好C语言,或C++,或Visual C++.

3. 实验时间

4学时

4. 实验内容

构造求FIRSTVT集合和LASTVT集合的程序。

5. 实验要求

? 扩充P113求FIRSTVT集合的算法。 ? 完成LASTVT集合的算法。

6. 输入输出

输入:

文法。 输出:

FIRSTVT集合和LASTVT集合。

《编译原理》课程组 10 of 37

《编译原理》实验指导书

实验四. 语义分析

1. 实验目的

? 通过上机实习,加深对语法制导翻译原理的理解,掌握将语法分析

所识别的语法范畴变换为某种中间代码的语义翻译方法。 ? 掌握目前普遍采用的语义分析方法──语法制导翻译技术。 ? 要求在语法分析程序中添加语义处理,对于语法正确的算术表达式,

输出其计算值。

2. 实验准备

微机CPU P4以上,256M以上内存,安装好C语言,或C++,或Visual C++.

3. 实验时间

4学时

4. 实验内容

在表达式的语法分析程序里,添加语义处理部分。

5. 实验要求

? 语义分析对象重点考虑经过语法分析后已是正确的语法范畴,实习

重点是语义子程序。 ? 在实验三“语法分析器”的里面添加PL/0语言“表达式”部分的语

义处理。 ? 计算表达式的语义值。

6. 输入输出

输入:

算术表达式,例如: 2 + 3 * 5作为输入。 输出:

17

《编译原理》课程组 11 of 37

《编译原理》实验指导书

实验五. 中间代码生成

1. 实验目的

要求在语法分析程序中添加语义处理,对于语法正确的表达式,输出其中间代码。

2. 实验准备

微机CPU P4以上,256M以上内存,安装好C语言,或C++,或Visual C++.

3. 实验时间

4学时

4. 实验内容

在实验三的表达式语法分析程序里,添加语义处理部分输出表达式的中间代码,用四元式序列表示。

5. 实验要求

? 在实验三“语法分析器”的里面添加PL/0语言“表达式”部分的语

义处理,输出表达式的中间代码。 ? 中间代码用四元式序列表示。

6. 输入输出

输入:

表达式,例如: a * (b + c)。 输出:

( + b c t1 ) ( * a t1 t2 )

《编译原理》课程组 12 of 37

《编译原理》实验指导书

六、课程设计

1、选题(四选一):

(1)构造递归下降分析程序语法分析器 (2)构造预测分析表语法分析器 (3)构造算符优先分析语法分析器 (4)构造LR(0)分析法语法分析器

2、设计方法:

小组分工,合作完成。从小到大,逐步扩展。按照文法和程序的特点,逐步

完成设计和测试。

3、设计报告:

应包括:报告标题、主要工作概述、具体内容(算法部分)、开发经验等。

七、考核方式

1、实验报告和课程设计报告

实验独立完成,提交实验报告;

课程设计采用分组的形式,3人一组,每个实习小组交一份课程设计报告,格式要求绝对规范!内容应包括以下内容:

? 题目 ? 设计思想 ? 算法

? 调试数据(输入/输出)

2、评分标准

? 由指导教师根据实验验收情况并结合实验报告质量及学习态度等进

行评分。 ? 课程设计作为独立考查课,学分为1。

《编译原理》课程组 13 of 37

《编译原理》实验指导书

八、参考文献

[1]《编译原理》(第二版),张素琴、吕映芝、蒋维杜,清华大学出版社,2005

年出版。

[2]《编译程序设计原理》,杜书敏、王永宁,北京大学出版社,1988年出版。 [3]《计算机编译原理》,张幸儿,科学出版社,1999年出版。

[4]《编译程序原理与技术》,李赣生等,清华大学出版社,版。

《编译原理》课程组 年10月出

14 of 37

1997


《编译原理》实验指导书2016(3).doc 将本文的Word文档下载到电脑 下载失败或者文档不完整,请联系客服人员解决!

下一篇:教科版五年级科学下册全册教案

相关阅读
本类排行
× 注册会员免费下载(下载后可以自由复制和排版)

马上注册会员

注:下载文档有可能“只有目录或者内容不全”等情况,请下载之前注意辨别,如果您已付费且无法下载或内容有问题,请联系我们协助你处理。
微信: QQ: