华南农业大学信息学院

华南农业大学信息学院

ID:14804634

大小:75.50 KB

页数:4页

时间:2018-07-30

华南农业大学信息学院_第1页
华南农业大学信息学院_第2页
华南农业大学信息学院_第3页
华南农业大学信息学院_第4页
资源描述:

《华南农业大学信息学院》由会员上传分享,免费在线阅读,更多相关内容在行业资料-天天文库

1、华南农业大学信息学院综合性、设计性实验成绩单开设时间:2008学年第一学期专业软件工程班级7班学号200631000715姓名刘明志实验题目与要求题目:语义分析程序要求:采用递归下降语法制导翻译法,对算术表达式,赋值语句进行语义分析并生成四元式序列.自我评价依据课本,本人能按时完成作业,并成功的运行了程序.在这过程中遇到的问题能够成功的解决….也从中学到了许多东西.成绩lA---按时完成实验要求的全部功能并运行通过,程序结构清晰、书写规范,实验报告叙述清楚完整,测试用例合理充分,有详尽的分析和总结。lB---基本完成实验内容,实验报告

2、叙述完整。lC---完成实验的大部分功能,实验报告结构清晰。lD----未按时完成实验,或者抄袭。一,实验内容与要求::采用递归下降语法制导翻译法,对算术表达式,赋值语句进行语义分析并生成四元式序列.输入是语法分析后提供的正确的单词串,输出为三地址指令形式的四元式序列.例如:对于语句串Begina:=2+3*4;x:=(a+b)/cend#输出的三地指令如下:(1)t1=3*4(2)t2=w+t1(3)a=t2(4)t3=a+b(5)t4=t3/c(6)x=t4二,语法分析程序的算法思想(1)设置语义过程.Emit(char*resu

3、lt,char*ag1,char*op,char*ag2)该函数的功能是生成一个三地址语句送到四元式表达中.四式表的结构如下:Struct{Charresult[8];Charag1[8];Charop[8];Charag2[8];}quad[20]Char*newtemp()该函数回送一个新的临时变量名,临时变量名产生的顺序为t1,t2,….Char*newtemp(void){Char*p;Charm[8];P=(char*)malloc(8);K++Itoa(k,m,10);Strcpy(p+1,m);P[0]=’t’;Retu

4、rn(p);}函数lrparser()在原来的语法分析的基础上插入相应的语义动作:将输入串翻译成四元式序列.在实验中只对表达式,赋值语句进行翻译.三,测试实验四,语义分析实验体会通过这次语义分析的实验,我对高级语言的学习有了更深的认识,了解得更透彻。我了解了高级语言转化为目标代码或汇编指令的过程,。对今后的学习将起很大的作用,对以后的编程有很大的帮助.本次实验虽然只是完成了一个简单的程序,并且程序的主要框架课本上有给出,但在组织程序结构和深入了确上学到了很多,加深对编译原理的理解,掌握编译程序的实现方法和技术.巩固了前面所学的

当前文档最多预览五页,下载文档查看全文

此文档下载收益归作者所有

当前文档最多预览五页,下载文档查看全文
温馨提示:
1. 部分包含数学公式或PPT动画的文件,查看预览时可能会显示错乱或异常,文件下载后无此问题,请放心下载。
2. 本文档由用户上传,版权归属用户,天天文库负责整理代发布。如果您对本文档版权有争议请及时联系客服。
3. 下载前请仔细阅读文档内容,确认文档内容符合您的需求后进行下载,若出现内容与标题不符可向本站投诉处理。
4. 下载文档时可能由于网络波动等原因无法下载或下载错误,付费完成后未能成功下载的用户请联系客服处理。