14级湘大编译原理实验

发布时间:2023-04-07 09:04:04   来源:文档文库   
字号:
《编译原理》实验题目与要求
一、实验报告要求
每位同学对每一个实验均要提交电子版和纸质报告。首先提交电子版报告(提交网址,http://172.22.112.254用户名:byyl无密码)电子版报告以源程序(需要有适当的注释)测试用例、输出文件等为主,包括纸质报告的电子版,须确保提交的源程序能编译运行,否则不要上交。纸质报告在电子版及源程序检查完成后再提交。纸质报告以问题分析、介绍所采用数据结构及算法和主要函数功能、实验中遇到的问题及解决方法、实验测试(含屏幕截图)、实验心得等为主,不得大量引用源程序(引用源程序总行数不得超过100行)不得互相拷贝,一经发现,雷同的报告均会判为不及格。

二、实验题目及内容

实验一:正则表达式与有限自动机
实验目的:通过本次实验,加深对正则表达式、NFADFA及其识别的语言的理解

实验题目:以下题目任选一
1 编程实现正则表达式转换为NFA 实验内容:输入任意一个正则表达式,输出其对应的NFA。正则表达式中运算符只有连接·、选择|和闭包*以及括号。确定NFA的存储结式、要求输出NFA的五元组各信息

2、编程实现NFA确定化为DFA的过程
实验内容将给定的NFA(五元组)进行确定化,输出等价的DFA。要求选择合适的NFA的存储格式,并进行正确性检查。 3、编程实现DFA识别字符串的过程。
实验内容:1DFA的输入与DFA的存储:确定DFA的数据结构以及存储格式 2DFA的正确性检查:DFA的五元组是否正确
3)输入任意一个整数NDFA的能列表显示其识别的所有长度小于等于N的字符串; 4DFA的规则字符串判定:输入(或用字符集随机生成)一个字符串,模拟DFA识别字符串的过程判定该字符串是否是规则字符串(属于DFA的语言集)

**4结合1-3设计一个字符串的识别器。任意给定一个正则表达式,输入任意的字符串,判定该字符串是否属于给定的正则语言集 *5编程实现网页源代码分析,能从网页中提取各种标签、网址等信息(信息种类可自己定)

实验二自顶向下语法分析
实验目的:通过本次实验,加深对递归下降算法、LL(1与抽象语法树的理解,学习程序设计语言的语法分析器的手工编程方法。

实验题目:以下题目任选一 1、递归下降分析程序 实验内容:1将递归下降子程序分析方法运用于算术表达式文法;
*2)生成如图所示的抽象语法树(Abstract Syntax Tree,设计并实现一个简单的计算器。

2.LL(1分析程序 实验内容对任意给定一个CFG计算文法的FIRST集合、FOLLOW集合、构造LL(1分析表。扩展要求:LL(1分析过程。

实验三由底向上语法分析
实验目的:通过本次实验,加深对移进规约分析法中算符优先法的理解,学习程序设计语言的语法分析器的手工编程方法。

实验题目:算符优先分析法的编程实现,

实验内容:1)对于任意给定的文法,判断其是否是算符优先文法。
*2通过语法分析,生成如图所示的抽象语法树,在此基础上设计并实现一个简单的计算器。




本文来源:https://www.2haoxitong.net/k/doc/9ad21475f56527d3240c844769eae009581ba26e.html

《14级湘大编译原理实验.doc》
将本文的Word文档下载到电脑,方便收藏和打印
推荐度:
点击下载文档

文档为doc格式