毕业论文论文范文课程设计实践报告法律论文英语论文教学论文医学论文农学论文艺术论文行政论文管理论文计算机安全
您现在的位置: 毕业论文 >> 报告 >> 正文

编绎技术上机报告之简单语法分析

更新时间:2007-10-4:  来源:毕业论文

编绎技术上机报告之简单语法分析|上机实验实习报告|计算机上机实习报告|简单的语法分析程序的设计

实验目的

      通过本次实验对语法分析的目的,语法分析

.实验内容:

            简单的语法分析程序的设计

.实验流程图

.实验原代码:

<程序>->begin<语句>end

<语句>-><赋值语句>|<条件语句>

<赋值语句>-><变量>:=<表达式>

<条件语句>->if<表达式>then<语句>

<表达式>-><变量>|<表达式>+<变量>

<变量>->x

#include<stdio.h>

#include<ctype.h>

char ch;

int T();

int F();

int P();

int E()

{

       int es=0;

       es=T();

       if(ch=='+')

       {

              ch=getchar();

              es=T();

              printf("+");

                     return (es);

       }

       else return(es);

}

int T()

{

       int es=0;

       es=F();

       if(ch=='*')

       {

              ch=getchar();

              es=P();

              printf("*");

              return(es);

       }

       else return(es);

}

int P()

{

       int es=0;

       es=F();

       if(ch=='=')

       {

              ch=getchar();

              es=T();

              printf("=");

              return(es);

       }

       else return(es);

}

int F()

{

       int es=0;

       if(ch=='(')

       {

              ch=getchar();

              es=E();

              if(ch!=')')return(3);

              else

              {

                     ch=getchar();

                     return(es);

              }

       }

              else

              {

                     if(isalpha(ch))

                     {

                            printf("%c",ch);

                            ch=getchar();

                            return(es);

                     }

                     else return(4);

              }

}

void main()

{

       int es=0;

       printf("请输入算术表达式:");

    ch=getchar();

       printf("算术表达式:");

       es=E();

       if(es==0)

              printf("\n翻译成功!\n");

       else

              printf("\n表达式有语法错误!\n");}

.实验结果:若图片无法显示请联系站长QQ752018766

     

.实验总结

    语法分析程序一词法分析输出的符号串作为输入,在分析过程中检查这个符号串是否为该程序语言的句子.若是,则输出该句子的分析树;否则就表示源程序存在语法错误.它的主要任务是按照程序语言的语法规则,从由词法分析输出的源程序符号中识别出各类语法成分,同时进行语法检查,为语义分析和代码生成作准备.执行语法分析任务的程序叫语法分析程序.

编绎技术上机报告之简单语法分析下载如图片无法显示或论文不完整,请联系qq752018766
设为首页 | 联系站长 | 友情链接 | 网站地图 |

copyright©lwfree.cn 六维论文网 严禁转载
如果本毕业论文网损害了您的利益或者侵犯了您的权利,请及时联系,我们一定会及时改正。