第二次实验报告 本次实验的亮点在于使用了四种不同的方式进行语义分析,包括递归子程序下降法、LL(1)分析法、LR(0)分析法和算符优先分析法。实验的目标是设计和实现一个表达式语法分析器。 实验内容包括概要设计、数据结构、流程图和关键函数等。首先,实验利用了第一次实验的结果,即token串,作为输入进行切词。然后,采用了四种不同的文法分析方式进行语法分析。 递归子程序下降法是一种自上而下的分析方法,它通过递归地调用子程序来分析和处理输入。LL(1)分析法是一种从左到右、从左到右的自动推导方法,它使用一个向前看符号来进行决策。LR(0)分析法是一种自底向上的分析方法,它将输入从左到右进行推导,使用一个项目集来进行状态转换。算符优先分析法是一种基于优先级的分析方法,它使用一个优先级表来决定产生式的规约顺序。 为了验证四种分析方法的正确性,实验采用了以下示例进行验证。示例中的Token输入格式已经调整为了后续实验方便,每个文法分析器的输入都是一个一维数组,这个数组就是从文件读取代码后所形成的TOKEN串。例如,输入数组为113,201,401,140,402,403,407,代表的是int main(){}。 通过实验,我们成功实现了递归子程序下降法、LL(1)分析法、LR(0)分析法和算符优先分析法四种语法分析方法。在实现过程中,我们按照概要设计中的数据结构和流程图进行编写,并关注实现关键函数。经过验证,四种分析方法都能正确地进行语法分析,达到了预期的结果。 在本次实验中,我们不仅学习了四种不同的语法分析方法,还掌握了概要设计的方法和流程图的绘制技巧。通过实验的实践,我们对语义分析的理论知识有了更深入的了解,并在实际操作中掌握了如何设计和实现一个表达式语法分析器。 总结起来,本次实验的亮点在于采用了四种不同的语法分析方法进行实现,并成功验证了其正确性。通过本次实验,我们加深了对语义分析的理解,提高了对概要设计和流程图的掌握,为后续的实验工作打下了良好的基础。
![](https://csdnimg.cn/release/download_crawler_static/86360642/bg5.jpg)
![](https://csdnimg.cn/release/download_crawler_static/86360642/bg6.jpg)
剩余25页未读,继续阅读
![pdf](https://img-home.csdnimg.cn/images/20210720083512.png)
![pdf](https://img-home.csdnimg.cn/images/20210720083512.png)
![docx](https://img-home.csdnimg.cn/images/20210720083331.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/release/wenkucmsfe/public/img/green-success.6a4acb44.png)