资源简介
编译原理课程设计,简单编译器
希望对大家有帮助,不过话说是学校的作业,仅供参考的说
代码片段和文件信息
/*****************************************************************
最后修改时间2007.01.04 18:00
作者:040430101、040430102、040430103、040430201
规约式经过改动,为55条
*****************************************************************/
#include
#include
#include
#define INT 1 //int
#define VOID 2 //void
#define IF 3 // if
#define ELSE 4 // else
#define WHILE 5 // while
#define RETURN 6 // return
#define CONSTANT 7 //int型
#define ID 8 //标识符
#define RELOP 9 //关系符 <、>、==、<=、>=、!=
#define ADDOP 10 // +和-
#define MULOP 11 // *和/
#define L_BRACKET 12 //代表 [
#define R_BRACKET 13 //代表 ]
#define L_PARENTHESE 14 //代表 (
#define R_PARENTHESE 15 //代表 )
#define L_BPARENTHESE 16 //代表 {
#define R_BPARENTHESE 17 //代表 }
#define SEMICOLON 18 //代表 ;
#define COMMA 19 //代表
#define EQUATER 20 //代表 =
#define $ 21 //终结符
#define P 30 //非终结符的编号
#define D1 31
#define D2 32
#define V1 33
#define T1 34
#define F1 35
#define P1 36
#define P2 37
#define P3 38
#define C1 39
#define L 40
#define S 41
#define S1 42
#define E1 43
#define S2 44
#define I 45
#define R1 46
#define E2 47
#define V2 48
#define S3 49
#define A1 50
#define T2 51
#define F2 52
#define C2 53
#define A3 54
#define A4 55
#define M1 56
#define M2 57
#define N 58
typedef struct token//******词法分析中的 token结构体******
{
char *name;//字符串
int type;//类型
int LineNum;//所在行数
struct token *next;
}token;
token *TokenHead*TokenTail;
typedef struct pank//*********语法 action表结构体**********
{
char sr;//移进或归约
int state;//转到的状态编号
}pank;
pank action[97][21];//action表
int go_to[97][29];//语法 go_to表
typedef struct stack//****语法分析栈结构体*****
{
int state;//状态
int word;//符号编码
}stack;
typedef struct Tree_Node{//****语法分析树*****
int code;//记录字符串对应编号
char *word;//记录字符串
int Rnum;//记录规约式的编号
int LineNum;//记录字符所在行数
char *place;//传递变量名称
int E_type;//传递变量的类型
struct Tree_Node *child1;
struct Tree_Node *child2;
struct Tree_Node *para;
}Tree_Node;
Tree_Node *Head*Tail;
typedef struct ivan//****语法产生式结构体****
{
int left;//产生式的左部
int len;//产生式右部的长度
}ivan;
ivan css[56]={{00}{301}{312}{311}{321}{321}{333}{336}{341}
{341}{356}{361}{361}{373}{371}{382}{384}{394}{402}
{400}{412}{410}{421}{421}{421}{421}{421}{432}{431}
{446}{4410}{457}{462}{463}{473}{471}{481}{484}{493}
{491}{503}{501}{513}{511}{523}{521}{521}{521}{534}
{541}{540}{553}{551}{560}{570}{580}};
//css[56]存的是55条规约式的左边非终结符的编号和右边规约的个数*/
char *Grammar[56]={“\0““P->D1““D1->D1D2““D1->D2““D2->
属性 大小 日期 时间 名称
----------- --------- ---------- ----- ----
文件 254 2007-01-05 10:02 code\code\040430101\1.txt
文件 57149 2007-01-05 11:24 code\code\040430101\compilerNEW1.cpp
文件 3473 2007-01-05 11:19 code\code\040430101\compilerNEW1.dsp
文件 549 2007-01-05 11:39 code\code\040430101\compilerNEW1.dsw
文件 58368 2009-04-18 12:45 code\code\040430101\compilerNEW1.ncb
文件 48640 2009-04-18 12:45 code\code\040430101\compilerNEW1.opt
文件 258 2009-04-18 12:45 code\code\040430101\compilerNEW1.plg
文件 241735 2009-02-19 02:11 code\code\040430101\Debug\compilerNEW1.exe
文件 314180 2009-02-19 02:11 code\code\040430101\Debug\compilerNEW1.ilk
文件 118795 2009-02-19 02:11 code\code\040430101\Debug\compilerNEW1.obj
文件 2133048 2009-02-19 02:11 code\code\040430101\Debug\compilerNEW1.pch
文件 508928 2009-02-19 02:11 code\code\040430101\Debug\compilerNEW1.pdb
文件 91136 2009-04-18 12:45 code\code\040430101\Debug\vc60.idb
文件 118784 2009-02-19 02:11 code\code\040430101\Debug\vc60.pdb
目录 0 2009-05-21 00:10 code\code\040430101\Debug
目录 0 2009-05-21 00:10 code\code\040430101
目录 0 2009-05-21 00:10 code\code
目录 0 2009-05-21 00:10 code
----------- --------- ---------- ----- ----
3695297 18
- 上一篇:时间APF控制器的动静态性能分析
- 下一篇:编译原理大作业 完整编译器
相关资源
- 编译原理大作业 完整编译器
- 编译原理--词法分析器+语法分析器 源
- pl0语法分析器
- 数据库课程设计-工资管理系统
- 哈夫曼树课程设计报告
- 教务管理系统文献综述
- 编译原理 三地址代码生成器
- 数字电压表课程设计 TLC549
- 《数字逻辑电路》智力竞赛抢答器 课
- 编译原理实验报告+源代码 预测分析法
- LL(1)分析过程模拟
- 编译原理实验常工院版
- 编译原理FOR循环语句的翻译程序设计
- 数据库课程设计 健康管理系统
- LR(0)完整的语法分析方法(拓广文
- OUC编译原理全部实验
- 编译原理上机源代码LR语法分析器
- 编译原理LR0分析代码完整
- 哈工大编译原理实验三语义分析实验
- 数据分析课程设计
- 计算机网络 课程设计——县中学网络
- 编译原理实验报告,词法分析,语法
- 算符优先分析程序的设计可趁设计
- 山东大学编译原理实验
- 读入一个C程序,统计程序中代码、注
- 微机原理课程设计 家庭报警系统,开
- 操作系统课程设计多道批处理系统两
- 编译原理语法分析实验报告
- vfp课程设计报告
- 编译原理-语法分析-LL1
评论
共有 条评论