下载此文档

编译原理试验词法分析器.doc


文档分类:高等教育 | 页数:约9页 举报非法文档有奖
1/9
下载提示
  • 1.该资料是网友上传的,本站提供全文预览,预览什么样,下载就什么样。
  • 2.下载该文档所得收入归上传者、原创者。
  • 3.下载的文档,不会出现我们的网址水印。
1/9 下载此文档
文档列表 文档介绍
该【编译原理试验词法分析器 】是由【小城故事书屋】上传分享,文档一共【9】页,该文档可以免费在线阅读,需要了解更多关于【编译原理试验词法分析器 】的内容,可以使用淘豆网的站内搜索功能,选择自己适合的文档,以下文字是截取该文章内的部分文字,如需要获得完整电子版,请下载此文档到您的设备,方便您编辑和打印。实验一词法分析器设计【实验目的】熟悉词法分析的基本原理,词法分析的过程以及词法分析中要注意的问题。复****高级语言,进一步加强用高级语言来解决实际问题的能力。通过完成词法分析程序,了解词法分析的过程。【实验内容】用C语言编写一个 PL/O词法分析器,为语法语义分析提供单词,使之能把输入的字符 串形式的源程序分割成一个个单词符号传递给语法语义分析,并把分析结果(基本字 ,运算符,标识符,常数以及界符)输出。【实验流程图】【实验步骤】 文件中基本字的源代码while((ch=fgetc(stieam))!=T)mtk=-l;chai-a[SIZE];mts=0;while(ch>=,a,&&ch<=,z,||ch>=A,&&ch<=Z){if(ch>= ,A,&&ch<=Z)ch+=32;a[-H-k]=(char)ch;ch=fgetc(stieam);}for(intm=0;m<=12&&k!=-l;m++)for(iiitn=O;n<=k;n++){if(a[n]==wsym[m][n])++s;elses=0;if(s==(stilen(wsym[m]))){printf(H%s\t,\wsym[m]):ni=14;n=k-rl;}}提取pl/O文件中标识符的源代码while((ch=fgetc(stieam))!=T){mtk=-l;chai-a[SIZE]= M”;mts=0;while(ch>= ,a,&&ch<= ,z,||ch>=,A,&&ch<=Z){if(ch>= ,A,&&ch<=Z)ch+=32;a[-H-k]=(char)ch;ch=fgetc(stieam);}for(intm=0;m<=12&&k!=-l;m++)for(iiitn=O;n<=k;n++){if(a[n]==wsym[m][n])++s;elses=0;if(s==(stilen(wsym[m]))){m=14:n=k+l;}}if(m==13)for(m=0;a[m]!=NULL;m++)piiiitf(M%c3. 提取pl/O 文件中常数的源代码while((ch=fgetc(stieam))!=T){wlule(ch>=,0'&&ch<='9'){num=10*num+ch-,0,;ch=fgetc(streain);}if(num!=0)pnntf(H%d,\num);num=O;}提取pl/O文件中运算符的源代码mtch=fgetc(streain);,){switch(ch){case^:pnntf(H+”);beak;case1-1:printfC1-”);beak;case**1:prmtf(M*n);break;case1/1:printfC1/”);bieak;case〉':if(fgetc(stream)===,)piiiitf(n>=”);elsepriiitf(H>case^1:f,);breakif(龟etc(steam)=?=')pmHf(y=,r);elsepnntf(H<case1;:pnntf(H:=;f,);break;case1#1:printfC'1#H);break;case-1:p】iiitfC=”);bieak;default:break;}ch=fgetc(stream);提取pl/O文件中界符的源代码mtch=fgetc(streain);,){switch(ch){case*;:pnntff ,” );bwak;case:':priiitf( M;”);beak;case? prmtf(,r(H);break;casey:pnntf( ”)n);break;default:break;}ch=fgetc(stream);}【实验结果】pl/O文件()内容consta=10;vaib,c;procedurep;beginc:=b+a;end;begmread(b);whileb#0dobegincallp;write(2*c);read(b)=+#*;;<>;;<>;祈下第译原理实埶 Debug 读验一?exe”Pressanykeytocontinue¥=【实验小结】,识别一个个字符并组合成相应的单词,是机器能过明白程序,定义各种关键字,界符。,在编译原理这门课中加深了对机器内部程序是如何运行,也加强自己上机动手能力。

编译原理试验词法分析器 来自淘豆网www.taodocs.com转载请标明出处.

相关文档 更多>>
非法内容举报中心
文档信息