目的:充分理解语义分析的方法及相关语义计算的执行时机。 要求: 1.以S属性的语法制导定义为基础,将下表的语义规则嵌套在语法分析的过程中,即实现语法制导的翻译过程。 产 生 式 语 义 规 则 L ® E n print (E.val) E ® E1 + T E.val := E1 .val + T.val E ® T E.val := T.val T ® T1 * F T.val := T1.val * F.val T ® F T.val := F.val F® (E) F.val := E
对于文法 E E + T | E – T | T T T * F | T / F | F F (E) | i 使用自下而上分析法的一种来进行构造算法 目前学过的自下而上分析法有 1、算符优先分析法(需要先来判断文法是否为算符优先文法) 2、LR(0)分析法 3、SLR(1)分析法 该程序的功能为,给定输入,程序按照先后顺序将使用的产生式输出。 如,输入25.6 * 14.5 + 2(首先经过词法分析,将其转化为 i * i + i),将在规约过程中使用到的产生式依次输出出来。