513进度安排6二基本设计思想721词法分析722语法分析8三主要数据结构4四调试运行结果5五总结与体会6
4
f一设计内容与设计要求
11课程设计的性质和目的编译原理课程设计是计算机专业课程,通过课程设计使学生进一步巩固课堂所学知识,全面熟悉、掌握编译程序编写的基本设计方法和技巧,进一步提高分析问题、解决问题及上机操作能力,为将来从事高层次的计算机软件开发工作打下一定的专业基础。
12设计课题课题一:应用编译原理的方法实现带括号的四则混合运算给定条件:1、词法符号定义如下:INTCDFLOATCDDDDFLOATCDDDDDEeλDOPADDOPSUBOPMULOPDIVLPAREN‘’RPAREN‘’LINE‘
’ASSIGN2、表达式文法定义如下:01SE02ET03EEOPADDT04EEOPSUBT05TP06TTOPMULP07TTOPDIVP08PINTC09PFLOATC10PLPARENERPAREN基本要求:1、以ASSIGN作为文法结束符号;2、应用词法分析技术识别单词;3、应用SLR1分析技术判别表达式的合法性;4、应用尾动作文法技术计算表达式的类型与值;5、要求表达式的类型与值严格一致。
5
f13进度安排计算机1181班:第18周:星期一星期二8:0012:008:0012:00230530230530
6
f二基本设计思想
本计算器采用编译原理的方法构建,先用有穷自动机辅助进行词法,把字符串形式的算术表达式的格式标准化,分离出一个个词法单元。然后采用SLR1文法分析法进行文法分析,检查表达式的正确性。并在过程中计算出已分析出的部分表达式的值。最终得出表达式的值。21词法分析由于各词法元素都可以用正则表达式来表示,所以做词法分析时采用正则表达式形式化表示各个元素以便于程序实现。四则混合运算各词法元素的正则表达式如下所示:
INTCDFLOATr