资源简介

赋值语句的翻译 LR文法 LL文法 简单优先法 编译原理

资源截图

代码片段和文件信息

#include “stdio.h“
#include “stdlib.h“
#include “string.h“
#include “conio.h“
#include 
#include “iostream.h“
#include 
#define N 50

char* WEN[]={“6““Zd{E}w(T)““EAE““EA““AiPA““Ai;““TiTi“};
char shuru[100];//char shuru[]={“d{s=s+i;m=m-b*i%c;}w(i<9)#“};

struct FENXI{
    char act_0[11];
    int act_1[11];
    int go[4];
}action[19];

void Init(){
    /*---------------       ACTION      -----------------------*/
    action[0].act_0[0]=‘s‘;       action[0].act_1[0]=2;
    action[1].act_0[10]=‘A‘; //A为acc     
    action[2].act_0[1]=‘s‘;       action[2].act_1[1]=3;
    action[3].act_0[6]=‘s‘;       action[3].act_1[6]=6;
    action[4].act_0[2]=‘s‘;       action[4].act_1[2]=7;
    action[5].act_0[2]=‘r‘;       action[5].act_1[2]=3;
    action[5].act_0[6]=‘s‘;       action[5].act_1[6]=6;
    action[5].act_0[9]=‘r‘;       action[5].act_1[9]=3;
    action[6].act_0[7]=‘s‘;       action[6].act_1[7]=9;
    action[6].act_0[9]=‘s‘;       action[6].act_1[9]=10;
    action[7].act_0[3]=‘s‘;       action[7].act_1[3]=11;
    action[8].act_0[2]=‘r‘;       action[8].act_1[2]=2;
    action[8].act_0[10]=‘s‘;      action[8].act_1[10]=2;
    action[9].act_0[6]=‘s‘;       action[9].act_1[6]=6;
action[10].act_0[2]=‘r‘;      action[10].act_1[2]=5;
    action[10].act_0[6]=‘r‘;      action[10].act_1[6]=5;
    action[10].act_0[10]=‘r‘;     action[10].act_1[10]=5;
    action[11].act_0[4]=‘s‘;      action[11].act_1[4]=13;
action[12].act_0[2]=‘r‘;      action[12].act_1[2]=4;
    action[12].act_0[6]=‘r‘;      action[12].act_1[6]=4;
action[12].act_0[10]=‘r‘;     action[12].act_1[10]=4;
    action[13].act_0[6]=‘s‘;      action[13].act_1[6]=15;
    action[14].act_0[5]=‘s‘;      action[14].act_1[5]=16;
    action[15].act_0[8]=‘s‘;      action[15].act_1[8]=17;
action[16].act_0[10]=‘r‘;     action[16].act_1[10]=1;
    action[17].act_0[6]=‘s‘;      action[17].act_1[6]=18;
    action[18].act_0[5]=‘r‘;      action[18].act_1[5]=6;
    
    /*--------------------     GOTO      -------------------------*/
    action[0].go[0]=1;
    action[3].go[1]=4;
    action[3].go[3]=5;
    action[5].go[1]=8;
    action[5].go[3]=5;
    action[9].go[3]=12;
    action[12].go[2]=14;
    action[13].go[2]=14;
}

void Print_LR(){//cout<<“hello“<    int ij;
cout<<“                         ACTION                                 GOTO“< cout<<“-----------------------------------------------------------------------------“<    cout<<“状态   do   {    }  while  (    )    i   op   op1   ;    #   Z   E   T   A“< cout<<“------------------------------------------------------------------------------“<    for(i=0;i<19;i++){
cout< for(j=0;j<11;j++)
    cout< for(j=0;j<4;j++)
    cout< cout<    }
    cout<<“----------------------------------------------------------------

 属性            大小     日期    时间   名称
----------- ---------  ---------- -----  ----

     文件         26  2010-01-08 18:07  DO-WHILE循环语句的翻译程序设计(LR方法、输出四元式)\1.txt

     文件       9516  2010-01-08 08:46  DO-WHILE循环语句的翻译程序设计(LR方法、输出四元式)\DO-WHILE循环语句的翻译程序设计(LR方法、四元式表示).cpp

     文件        123  2010-01-09 21:23  DO-WHILE循环语句的翻译程序设计(LR方法、输出四元式)\请先读我!.txt

     目录          0  2010-01-09 21:19  DO-WHILE循环语句的翻译程序设计(LR方法、输出四元式)

----------- ---------  ---------- -----  ----

                 9665                    4


评论

共有 条评论