1 / 16
文档名称:

编译原理课程设计实验报告-单词的词法分析器的设计.doc

格式:doc   页数:16
下载后只包含 1 个 DOC 格式的文档,没有任何的图纸或源代码,查看文件列表

如果您已付费下载过本站文档,您可以点这里二次下载

分享

预览

编译原理课程设计实验报告-单词的词法分析器的设计.doc

上传人:3346389411 2012/5/9 文件大小:0 KB

下载得到文件列表

编译原理课程设计实验报告-单词的词法分析器的设计.doc

文档介绍

文档介绍:学生学号实验课成绩武汉理工大学学生实验报告书实验课程名称《编译原理》开课学院计算机科学与技术学院指导老师姓名学生姓名学生专业班级2011—2012学年第1学期实验课程名称:编译原理实验项目名称单词的词法分析器的设计实验成绩实验者专业班级组别同组者实验日期年月日第一部分:实验分析与设计(可加页)实验内容描述(问题域描述):设计,编制并调试一个词法分析程序,加深对词法分析原理的理解。:在上机前应认真做好各种准备工作,熟悉机器的操作系统和语言的集成环境,独立完成算法编制和程序代码的编写;上机时应随带有关的高级语言教材或参考书;要学会程序调试与纠错;每次实验后要交实验报告。。实验基本原理与设计(包括实验方案设计,实验手段的确定,试验步骤等,用硬件逻辑或者算法描述):(1)关键字:benginifthenwhiledoend所有的关键字都是小写。(2)运算符和界符::=+-*/<<=<>>>==;()#(3)其他单词是标志符(ID)和整形常数(NUM),通过以下正规式定义:ID=letter(letter|digit)*NUM=digitdigit*(4)空格空白、制表符和换行符组成。空格一般用来分隔ID、NUM、运算符、界符和关键字,词法分析阶段通常被忽略。:17if2:=18then3<20while4<>21do5<=22end6>23Letter(letter|digit)10>=24digitdigit*11=25+13;26-14(27*15)28/16#:#include<>#include<>charprog[80],token[6];charch;intsyn,p,m,n,sum;char*rwtab[6]={"begin","if","then","while","do","end"};main(){p=0;printf("\npleaseintputstring:");do{ch=getchar();prog[p++]=ch;}while(ch!='#');p=0;do{scaner();switch(syn){case11:printf("(%d,%d)\n",syn,sum);break;case-1:printf("inputerror\n");break;default:printf("(%d,%s)\n",syn,token);}}while(syn!=0);getch();}/*词法扫描程序:*/scaner(){for(n=0;n<8;n++)token[n]=NULL;m=0;ch=prog[p++];while(ch=='')ch=prog[p++];if((ch<='z'&&ch>='a')||(ch<='Z'&&ch>='A')){while((ch<='z'&&ch>='a')||(ch<='Z'&&ch>='A')||(ch<='9'&&ch>='0')){token[m++]=ch;ch=prog[p++];}token[m++]='\0';ch=prog[--p];syn=10;for(n=0;n<6;n++)if(strcmp(token,rwtab[n])==0){syn=n+1;break;}}elseif((ch<='9'&&ch>='0')){sum=0;while((ch<='9'&&ch>='0')){sum=sum*10+ch-'0';ch=prog[p++];}ch=prog[--p];syn=11;}elseswitch(ch){case'<':m=0;token[m++]=ch;ch=prog[p++];if(ch=='>'){syn=21;token[m++]=ch;}elseif(ch=='='){syn=22;token[m++]=ch;}else{syn=20;ch=prog[--p];}break;case'>':token[m++]=ch;ch=prog[p++];if(ch=='='){syn=24;token[m++]=ch;}else{syn=23;ch=prog[--p];}break;case':':token[m++]=ch;ch=prog[p++];if(ch=='='){syn=18;token[m++]=ch;}else{syn=17;ch=prog[--p];}break;case'+':syn=13;token[0]=ch;break;case'-':syn=14;token[0]=ch;break;case'*':syn=15;token[0]=ch;brea

最近更新

高效警校入学准备建议书 6页

高效英文备考策略建议书 6页

高效聚合氯化铝铁处理项目建议书 6页

高效校园建议书 6页

高战略眼光公司管理建议书 5页

高中教务完善建议书 6页

骑楼街历史文化保护与活化利用建议书 6页

餐饮成本控制与管理建议书 5页

食堂卫生质量提升建议书 6页

领导视角下的工作建议书 5页

预防职务犯罪措施建议书 5页

幼儿冬季视力保护方法 47页

急性中毒的药物治疗与护理配合 50页

2024年海盐县招教考试备考题库附答案解析(夺.. 31页

2024年淳安县招教考试备考题库附答案解析(夺.. 31页

2024年温泉县招教考试备考题库带答案解析(夺.. 30页

2024年湖北生物科技职业学院马克思主义基本原.. 13页

2024年湖南大学马克思主义基本原理概论期末考.. 12页

2024年湖南艺术职业学院马克思主义基本原理概.. 13页

2024年满洲里俄语职业学院马克思主义基本原理.. 12页

2024年焦作师范高等专科学校马克思主义基本原.. 12页

2024年田阳县幼儿园教师招教考试备考题库带答.. 31页

2024年盐城工学院马克思主义基本原理概论期末.. 12页

2024年神池县幼儿园教师招教考试备考题库及答.. 31页

2024年红安县招教考试备考题库带答案解析 31页

2024年罗源县幼儿园教师招教考试备考题库附答.. 31页

2024年芜湖学院马克思主义基本原理概论期末考.. 12页

2024年萨迦县招教考试备考题库含答案解析(夺.. 31页

2024年衡水健康科技职业学院马克思主义基本原.. 12页

2024年西南财经大学马克思主义基本原理概论期.. 12页