编译原理第二次试验
来源:互联网 发布:装饰公司取名软件 编辑:程序博客网 时间:2024/05/17 03:20
实验目的
写出算符优先分析器。理解自底向上的编译方法的运用。采用算符优先分析法对表达式进行分析,并给出四元式。
实验步骤
1.找出优先关系矩阵
2.在代码中表示出优先关系矩阵
3.通过逐个扫描输入的字符串,进行匹配,最后放到输入栈中
4.入栈优先函数,方便以后比较
5.在主函数中,先将文件里的内容读入缓冲区,然后从缓冲区依次取数进行一下判断。
实验感想
通过这次试验,我理解了什么是自底向上的编译过程。也理解了怎样求FIRST集合和FOLLOW集合。并且通过编写桌面应用程序了解了一些桌面控件的使用。这次实验可以说是前面实验的综合,程序中也有几个地方用到了前面写的代码。对于我自己来说,最难的部分在于讲这些思想转化成代码实现出来。很大一部分在于自己平时没有多打代码以及就是对算符优先分析的思想理解得还不透彻。在写main函数时,因为要调用很多函数,刚开始写的时候陷入了死循环。以及栈函数的各种调用发生了错误。说明自己思路还不够清晰。因为之前对算符优先分析法及四元式的理解不够明白,在这个实验成功之后,字节能够透彻地了解,知道了算符文法的形式,对给定的算符文法能构造算符优先关系分析表,并判别所给出的文法是否为算符优先文法,同时我也认识到算符优先文法的优缺点及实际应用中的局限性。
阅读全文
0 0
- 编译原理第二次试验
- 第二次试验
- 第二次试验
- 第二次试验
- 第二次试验
- 武汉大学编译原理第二次作业
- C++第二次试验
- c++第二次试验-01
- c++第二次试验
- c++第二次试验1
- C++第二次试验作业
- c++第二次试验2
- c++第二次试验
- c++第二次试验
- c++第二次试验
- 汇编第二次试验
- 补c++第二次试验
- 微机原理第二次试验-将四位十六进制数转化为16位二进制数
- 557. Reverse Words in a String III
- Android Activity的任务栈和四大启动模式
- [黑苹果]黑苹果折腾记
- New Year Snowmen CodeForces
- hadoop学习(三)----hadoop2.x完全分布式环境搭建
- 编译原理第二次试验
- 【Music】李叔同·送别
- 景区管理项目之前期准备
- c++有序链表归并
- 基于mvc模式的应用框架之struts(一)
- Hdoj 2674 N!Again
- Banner的使用
- python调用matlab,并解决安装pywin32报错原因
- 【前端开发实例】移动端购物车左滑删除 -(七)