- 21
- 0
- 约8.82千字
- 约 21页
- 2018-12-29 发布于湖北
- 举报
《编译原理》(实验部分)
实验9_自底向上算符优先分析法
一、实验目的
加深对语法分析器工作过程的理解;加强对算符优先分析法实现语法分析程序的掌握;能够采用一种编程语言实现简单的语法分析程序;能够使用自己编写的分析程序对简单的程序段进行语法翻译。
二、实验设备
1、PC 兼容机一台;操作系统为WindowsWindowsXP。
2、Visual C++ 6.0 或以上版本, Windows 2000 或以上版本,汇编工具(在Software 子目录下)。
三、实验原理
先在算符栈置“$”,然后开始顺序扫描表达式,若读来的单词符号是操作数,这直接进操作数栈,然后继续读下一个单词符号。分析过程从头开始,并重复进行;若读来的是运算符θ2 则将当前处于运算符栈顶的运算符θ1的入栈优先数f与θ2的比较优先函数g进行比较。
四、实验步骤
1、定义目标语言的语法规则;
2、求解预测分析方法需要的符号集和分析表;
3、依次读入实验一的分析结果,根据预测分析的方法进行语法分析,直到源程序结束;
4、对遇到的语法错误做出错误处理。
源程序:
#include stdio.h
#include stdlib.h
#include iostream.h
char data[20][20]; //算符优先关系
char s[100]; //模拟符号栈s
char lable[20]; //文法终极符集
char input[100]; //文法输入符号串
char string[20][10]; //用于输入串的分析
int k;
char a;
int j;
char q;
int r; //文法规则个数
int r1;
int m,n,N; //转化后文法规则个数
char st[10][30]; //用来存储文法规则
char first[10][10]; //文法非终结符FIRSTVT集
char last[10][10]; //文法非终结符LASTVT集
int fflag[10]={0}; //标志第i个非终结符的FIRSTVT集是否已求出
int lflag[10]={0}; //标志第i个非终结符的LASTVT集是否已求出
int deal(); //对输入串的分析
int zhongjie(char c); //判断字符c是否是终极符
int xiabiao(char c); //求字符c在算符优先关系表中的下标
void out(int j,int k,char *s); //打印s栈
void firstvt(char c); //求非终结符c的FIRSTVT集
void lastvt(char c); //求非终结符c的LASTVT集
void table(); //创建文法优先关系表
void main()
{
int i,j,k=0;
printf(请输入文法规则数:);
scanf(%d,r);
printf(请输入文法规则:\n);
for(i=0;ir;i++)
{
scanf(%s,st[i]);//存储文法规则,初始化FIRSTVT集和LASTVT集*/
first[i][0]=0;
/*first[i][0]和last[i][0]分别表示st[i][0]非终极符的FIRSTVT集和LASTVT集中元素的个数*/
last[i][0]=0;
}
for(i=0;ir;i++) //判断文法是否合法
{
您可能关注的文档
- 《安规》题库及答案解析.doc
- 《安全伴我行》主题班会PPT解析.ppt
- 《安全生产法》修改要点及部分法条解读解析.pptx
- 《安全生产技术》例题解析.ppt
- 《安全用电》参考课件3解析.ppt
- 《安塞腰鼓》课件(要用)解析.ppt
- 《暗黑破坏神3》武僧吸血和击中回血的详细比较解析.pptx
- 《遨游汉字王国》PPT解析.ppt
- 《奥斯维辛没有什么新闻》ppt课件解析.ppt
- 《奥斯维辛没有什么新闻》解析.ppt
- DB3205_T 1084-2023 跨境电子商务出口运营人员职业能力要求.docx
- T∕ABI 0003-2025 分布式标识技术要求.docx
- GTCC-009-2021 弹条Ⅰ型、Ⅱ型扣件弹条-铁路专用产品质量监督抽查检验实施细则.docx
- DB37∕T 5297-2024 顶管工程技术规程.docx
- DB41 771-2012 金属非金属矿山在用空气压缩机安全检测检验规范.docx
- DB37∕T 5281-2024 地源热泵系统工程技术规程.docx
- DB21_T 4385-2026 超低能耗建筑设计规程.docx
- DB41T 846-2013 电缆用铜包铝导体.docx
- DBJ33_T 1353-2025 装配式建筑外窗安装技术规程.docx
- DB32_T 5264-2025 城市轨道交通工程工程量清单和资产清单数据标准.docx
最近下载
- 2026年职业资格房地产经纪人房地产经纪专业基础-房地产经纪职业导论参考题库含答案解析(5卷题有答案.docx VIP
- 部编版道德与法治五年级下册复习资料.pdf VIP
- JCT2559-2020 岩棉外墙外保温系统用粘结、抹面砂浆.pdf VIP
- 外研版(三起)(2024)三年级下册英语Unit 1《Animal friends》教案(共4课时).docx VIP
- 《中华民族共同体概论》第十三讲测试题及答案.docx VIP
- 油田油气集输设计规范宣贯材料PPT.ppt VIP
- 广西桂林市2023-2024学年高一下学期期末质量检测物理试卷(含答案).docx VIP
- 中考数学总复习课件14个专题.ppt VIP
- 气田集输设计规范GB50349-2015知识培训.pptx
- 2025年全面从严治党工作报告 .pdf VIP
原创力文档

文档评论(0)