毕业作品网站

 首 页 机械毕业设计 电子电气毕业设计 计算机毕业设计 土木工程毕业设计 视觉传达毕业设计 理工论文 文科论文 毕设资料 帮助中心 设计流程 
垫片
您现在所在的位置:首页 >>计算机毕业设计 >> 文章内容
                 
垫片
   我们提供全套毕业设计和毕业论文服务,联系微信号:biyezuopinvvp QQ:1015083682   

Mini-C编译器设计与实现 毕业论文+任务书+评价表+答辩PPT+项目源码

文章来源:www.biyezuopin.vip   发布者:毕业作品网站  

1. 概述

本次实验是构造一个高级语言的子集的编译器,目标代码是汇编语言。按照任务书,实现的方案可以有很多种选择。

可以根据自己对编程语言的喜好选择实现。建议大家选用decaf语言或C语言的简单集合SC语言。

实验的任务主要是通过对简单编译器的完整实现,加深课程中关键算法的理解,提高学生系统软件研发技术。

2. 
系统描述

2.1. 自定义语言概述

自定义语言是基于C语言的简化语言,具有C语言中最为基础的内容,包括基本的运算操作、if-else、for、while循环语句,自定义函数和变量等。

2.2. 单词文法与语言文法

Mini-C的文法如下:

G[program]:

program → ExtDefList

ExtDefList → ExtDef ExtDefList | ε

ExtDef → Specifier ExtDecList ;| SpecifierFunDecCompSt

Specifier → int | float | char | StructSpecifier

ExtDecList → VarDec | VarDec , ExtDecList

VarDec → ID | VarDec ( Exp )

FucDec → ID ( VarList )  | ID ()

VarList → ParamDec ,VarList | ParamDec

ParamDec → Specifier VarDec

CompSt → { DefList StmList }

StmList → Stmt StmList | ε

Stmt → Exp ; | CompSt | returnExp ; | FOR ( Exp ; Exp ; Exp ) Stmt | if ( Exp )Stmt | if( Exp ) Stmt else Stmt| while ( Exp ) Stmt

DefList → Def DefList | ε

Def →Specifier DecList ;

DecList → Dec | Dec ,DecList

Dec → VarDec | VarDec =Exp

Exp → Exp=Exp | Exp && Exp | Exp | |Exp | Exp < Exp| Exp <= Exp | Exp == Exp | Exp != Exp | Exp > Exp | Exp >= Exp | Exp +Exp| Exp -Exp | Exp *Exp | Exp /Exp | INT | FLOAT | CHAR | VarDec | Exp ++ | Exp -- | ++ Exp | --Exp | VarDec += Exp | VarDec -= Exp | VarDec *= Exp | VarDec /= Exp | BREAK | CONTINUE | Exp . ID | ( Exp ) | -Exp | ! Exp | ID ( Args ) | ID ()

Args → Exp , Args | Exp

StructSpecifier → STRUCT StructName { ExtDefList } | STRUCT ID

StructName → ID | ε













  全套毕业设计论文现成成品资料请咨询微信号:biyezuopinvvp QQ:1015083682     返回首页 如转载请注明来源于www.biyezuopin.vip  

                 

打印本页 | 关闭窗口
本类最新文章
基于MatlabSimulink 35kV输电线路继电保护的设计 分布式风电场低电压穿越故障建模与
大学生内容分享和社交平台的设计与 基于SSM框架的企业人事薪酬管理 基于大模型的代码注释自动生成与维
| 关于我们 | 友情链接 | 毕业设计招聘 |

Email:biyeshejiba@163.com 微信号:biyezuopinvvp QQ:1015083682  
本站毕业设计毕业论文资料均属原创者所有,仅供学习交流之用,请勿转载并做其他非法用途.如有侵犯您的版权有损您的利益,请联系我们会立即改正或删除有关内容!