您好,欢迎来到爱站旅游。
搜索
您的当前位置:首页算法优先分析-编译原理

算法优先分析-编译原理

来源:爱站旅游
算符优先分析法的基本思想:

首先确定算符(确切地说是终结符)之间的优先关系和结合性质,然后借助这种关系,比较相邻算符之间的优先级来确定句型的可归约串,并进行归约。

注意:算符优先分析过程是自下而上的归约过程,但它的可归约串未必是句柄,也就是说,算符优先分析过程不是一种规范归约。

一、实验目的

1.理解自底向上优先分析,比较和自顶向下优先分析的不同。 2.理解算符优先分析的特点,体会其和简单优先分析方法的不同 3.加深对编译器语法分析的理解。 二、实验原理

1.自底向上优先分析方法,也称移进-归约分析,粗略地说它的思想是对输入符号串自左向右进行扫描,并将输入符号逐个移入一个后进先出栈,边移入边分析,一旦栈顶符号串形成某个句型的句柄或可归约串时,就将该产生式的左部非终极符代替相应的右边文法符号串。

2.终结符号间优先关系的确定 ,用FIRSTVT和LASTVT计算 3.最左素短语:

所谓素短语是指这样的一个短语,它至少含有一个终结符,并且除它自身之外不再含有其它素短语。最左素短语是指处于句型最左边的那个素短语。最左素短语是算符优先分析算法的可归约串。 4.计算得到所给文法的算符优先矩阵

5.算符优先分析的基本过程:

三、实验要求

使用算符优先分析算法分析下面的文法: E’ → #E# E → E+T | T T → T*F | F F → P^F | P P → (E) | i

其中i可以看作是一个终结符,无需作词法分析。具体要求如下:

1. 如果输入符号串为正确句子,显示分析步骤,包括分析栈中的内容、

2

优先关系、输入符号串的变化情况;

2. 如果输入符号串不是正确句子,则指示出错位置。 四、实验运行

输入一个正确的句子,结果如下:

输入一个错误的句子,提示为不合法的句子:

3

4

因篇幅问题不能全部显示,请点此查看更多更全内容

Copyright © 2019- azee.cn 版权所有 赣ICP备2024042794号-5

违法及侵权请联系:TEL:199 1889 7713 E-MAIL:2724546146@qq.com

本站由北京市万商天勤律师事务所王兴未律师提供法律服务