【毕业设计】C-nus词法分析和语法分析设计编译器编译原理课程设计文档56页高清浏览
1、手机端页面文档仅支持阅读 15 页,超过 15 页的文档需使用电脑才能全文阅读。
2、下载的内容跟在线预览是一致的,下载后除PDF外均可任意编辑、修改。
3、所有文档均不包含其他附件,文中所提的附件、附录,在线看不到的下载也不会有。
特色有良好的输出界面,通过程序修改成程序,其思路和方法和差不多,方便理解。
不足程序语法实现部分只用了递归下降分析种方法。
此程序框架与教材编译原理及实践附录编译器的程序框架相似。
递归下降分析方法手工实现应经验少程序逻辑多,调试费时久,不能保证程序的高健壮性。
二〇〇八年四月十六日星期三编译原理课程设计报告课题名称词法分析和语法分析设计提交文档学生姓名提交文档学生学号同组成员名单指导教师姓名指导教师评阅成绩指导教师评阅意见提交报告时间年月日二〇〇八年四月十六日星期三课程设计目标实验建立编译器。
只含有扫描程序和语法分析部分。
分析与设计编译器设计的整体框架,本实验实现扫描处理和语法分析程序图中粗黑部分。
扫描程序部分系统设计思想设计思想根据图用结构实现状态转换。
惯用词法打开源代码文件扫描处理词法分析语法分析程序语义分析程序源代码优化程序代码生成器目标代码优化程序目标代码记号语法树注释树中间代码目标代码记号表处理器文字表二〇〇八年四月十六日星期三语言的关键字专用符号其他标记是和,通过下列正则表达式定义大写和小写字母是有区别的④空格由空白换行符和制表符组成。
空格通常被忽略,除了它必须分开关键字。
注释用通常的语言符号围起来。
注释可以放在任何空白出现的位置即注释不能放在标记内上,且可以超过行。
注释不能嵌套,的二〇〇八年四月十六日星期三说明当输入的字符使到达接受状态的时候,则可以确定个单词了。
初始状态设置为,当需要得到下个时,取得次的第个字符,并且按照与对此字符的类型分析,转换状态。
重复此步骤,直到为止,输出类型。
当字符为时,状态转换为再判断下个字符,如果为则继续转到,最后以时转到状态,表明是注释,如果其他的则是字符停滞于当前字符,并且输出。
程序流程图二〇〇八年四月十六日星期三读取源文件行输出读取个字符赋值输出是否到达终态否是源文件各文件或函数的设计说明扫描程序用到,声明词法状态,词法分析中的状态二〇〇八年四月十六日星期三定义的的类型种,分别对应于结束定义的结构体,包括类型对应的串所在代码的行号每种对应的串,如定义中函数文件函数说明设置输出结果界面以及设置各种输出状态。
