洛阳理工学院计算机与信息工程系
实验报告日期:2011年5月10日
学号
课程
实验名称B08050423班级编译原理语法分析器B080504姓名实验陈志福
一实验目的
编制一个递归下降分析程序,实现对词法分析程序所提供的单词序列的语法检查和结构分析。
二实验要求
利用C语言编制递归下降分析程序,并对简单语言进行语法分析。
待分析的简单语言的语法:
用扩充的BNF表示如下:
<程序>::=begin<语言串>end
<语言串>::=<语句>{;<语句>}
<语句>::=<赋值语句>
<赋值语句>::=ID:=<表达式>
<表达式>::=<项>{+<项>|-<项>}
<项>::=<因子>{*<因子>|/<因子>}
<因子>::=ID|NUM|(<表达式>)
实验要求说明:
输入单词串,以”#”结束,如果是正确的文法句子,则输出成功信息,打印“success”,否则输出“error”。
三实验内容
代码如下:
#include<stdio.h>
#include<iostream.h>
#include<string.h>
#defineMAX150//词法分析表的最大容量
#defineMAXBUF255//缓冲区的最大缓冲量
voidterm();
voidlrparser();
voidstatement();
voidyucu();
voidexpression();
voidfactor();
charprog[MAXBUF],token[MAX];
charch;
intsyn,p,m,n,sum,kk;
char*rwtab[6]={"begin","if","then","while","do","end"};
voidscaner()
{
for(m=0;m<MAX;m++)
//缺少操作数 return(es); } } return(es); } void main() -27- { int es=0; es=scan();//调词法分析 if (es>0) printf("语法分析有错,编译...
编译原理语法分析器_信息与通信_工程科技_专业资料。编译原理(实验)计算机科学与工程学院 计算机 033 班 曾志强 22 号 语法分析一、实验任务本实验的任务是编写...
编译原理语法分析器(完美运行版)_计算机软件及应用_IT/计算机_专业资料。编译原理语法分析器(完美运行版)c语言学院(系)名称:计算机工程系 姓名 班级 2010 级班 ...
青岛理工大学课程实验报告课 程 编译原理 班级 实验日期 名称姓 学号 实验成绩 名实验 实验二 语法分析 名称实 编制一个递归下降分析程序,实现对词法分析程序所...
从而巩固和加强对词法分析、语法分析、语义分 析、 代码生成和报错处理等理论的认识和理解; 培养学生对完整系统的独立分析和设计的能 力,进一步培养学生的独立编程...
编译原理实验报告词法分析器 实验目的 1. 熟练掌握词法分析程序的基本原理 2. 掌握词法分析程序的设计和实现 实验内容 1. 针对一个简化的 C 语言子集完成对它的...
编译原理 语法分析器 (java完美运行版)_计算机软件及应用_IT/计算机_专业资料。java完美运行版 编译原理 语法分析器实验二一、实验目的 语法分析器 通过完成预测...
福建农林大学计算机与信息学院 计算机类 课程设计报告课程名称: 编译原理 课程设计题目: 语法分析器 姓名: 系: 专年学业: 级: 号: 计算机 计算机科学与技术 2009...
编译原理实验报告 实验名称: 实验类型: 指导教师: 专业班级: 姓学名: 号: 编写语法分析分析器 验证型实验 庄燕滨 10 软件卓越 黄子轩 10030416 15251909800@139...
编译原理课程设计 语法词法分析器_工学_高等教育_教育专区。词法和语法各用一中方法实现.今日推荐 157份文档 2015国家公务员考试备战攻略...
热门文档