扩充的语法规则有:实现 while、do while、for语句、大于>比较运算符号以及求余计算式子,具体文法规则自行构造。 可参考:P97及P136的文法规则。 (1) While-stmt --> while exp do stmt-sequence endwhile (2) Dowhile-stmt-->do stmt-sequence while(exp); (3) for-stmt-->for identifier:=simple-exp to simple-exp do stmt-sequence enddo 步长递增1 (4) for-stmt-->for identifier:=simple-exp downto simple-exp do stmt-sequence enddo 步长递减1 (5) 大于>比较运算符号以及求余计算式子的文法规则请自行组织。 (6) 把TINY语言原有的if语句书写格式 if_stmt-->if exp then stmt-sequence end | | if exp then stmt-sequence else stmt-sequence end 改写为: if_stmt-->if(exp) stmt-sequence else stmt-sequence | if(exp) stmt-sequence 二、要求: (1)要提供一个源程序编辑界面,以让用户输入源程序(可保存、打开源程序) (2)可由用户选择是否生成语法树,并可查看所生成的语法树。 (3)应该书写完善的软件文档
2019-12-21 21:37:58 145KB TINY 语法分析 华南师范大学
1
华南师范大学 本资源包括TINY扩充语言的语法分析的实验报告,编译原理附录B和TINY扩充语言的语法分析代码.实验报告中说明了该实验的完成步骤. 扩充的语法规则有:实现while、do while、for语句和求余计算式子,具体文法规则自行构造。 可参考:P97及P136的文法规则。 (1) While-stmt --> while exp do stmt-sequence endwhile (2) Dowhile-stmt-->do stmt-sequence while exp (3) for-stmt-->for identifier:=simple-exp to simple-exp do stmt-sequence enddo 步长递增1 (4) for-stmt-->for identifier:=simple-exp downto simple-exp do stmt-sequence enddo 步长递减1 要求: (1)要提供一个源程序编辑界面,以让用户输入源程序(可保存、打开源程序) (2)可由用户选择是否生成语法树,并可查看所生成的语法树。 (3)应该书写完善的软件文档
2019-12-21 20:09:16 6.27MB 编译原理 TINY 扩充语言 语法分析
1
要求: (1)要提供一个源程序编辑界面,以让用户输入源程序(可保存、打开源程序) (2)可由用户选择是否生成语法树,并可查看所生成的语法树。 (3)应该书写完善的软件文档。 说明:首先使用C语言扩充语法,然后采用Qt来做界面。
2019-12-21 19:30:04 21.12MB 编译原理实验
1