《编译原理》课程
实验报告
哈尔滨工程大学软件学院
2015年5月
实验2:语法分析
一、实验目的 巩固对语法分析的基本功能和原理的认识。
通过对语法分析表的自动生成加深语法分析表的认识。
理解并处理语法分析中的异常和错误。 二、实验内容 本程序是基于已构建好的某一个语法的预测分析表来对用户的输入字符串进行分析,判断输入的字符串是否属于该文法的句子。
基本实现思想:接收用户输入的字符串(字符串以“#”表示结束)后,对用做分析栈的一维数组和存放分析表的二维数组进行初始化。然后取出分析栈的栈顶字符,判断是否为终结符,若为终结符则判断是否为“#”且与当前输入符号一样,若是则语法分析结束,输入的字符串为文法的一个句子,否则出错若不为“#”且与当前输入符号一样则将栈顶符号出栈,当前输入符号从输入字符串中除去,进入下一个字符的分析。若不为“#”且不与当前输入符号一样,则出错。
若栈顶符号为非终结符时,查看预测分析表,看栈顶符号和当前输入符号是否构成产生式,若产生式的右部为ε,则将栈顶符号出栈,取出栈顶符号进入下一个字符的分析。若不为ε,将产生式的右部逆序的入栈,取出栈顶符号进入下一步分析。
程序流程图:
本程序中使用以下文法作对用户输入的字符串进行分析:
E→TE’
E’→+TE’|ε
T→FT’
T’→*FT’|ε
F→i|(E)
该文法的预测分析表为
您可能关注的文档
最近下载
- MBTI 英文介绍课件.ppt VIP
- 《乙炔气柜安全运行规程》.pdf VIP
- 《学前儿童艺术教育与活动指导》试卷及答案_2-2《学前儿童艺术教育与活动指导(第二版)》(美术部分)参考答案.docx VIP
- 2026年青岛华通国有资本运营集团有限责任公司校园招聘考试备考试题及答案解析.docx VIP
- 国家安全法课件.pptx VIP
- 中联牌ZLJ5320JQZ25V汽车起重机营销手册.doc VIP
- cmos图像传感器剖析.pptx VIP
- 风电工程质量检测计划 .pdf VIP
- 【《基于Multisim的病房呼叫系统的仿真设计》10000字(论文)】 .pdf
- 伟创电气AC70系列矢量型变频调速器使用指导书.pdf
原创力文档

文档评论(0)