- 1、本文档共33页,可阅读全部内容。
- 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
- 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
编译原理课程设计报告
设计题目 编译代码生成器设计
学生姓名
班 级
学 号
指导老师
成 绩
一、课程设计的目的
编译原理课程兼有很强的理论性和实践性,是计算机专业的一门非常重要的专业基础课程,它在系统软件中占有十分重要的地位,是计算机专业学生的一门主修课。为了让学生能够更好地掌握编译原理的基本理论和编译程序构造的基本方法和技巧,融会贯通本课程所学专业理论知识,提高他们的软件设计能力,特设定该课程的课程设计,通过设计一个简单的PASCAL语言(EL语言)的编译程序,提高学生设计程序的能力,加深对编译理论知识的理解与应用。
二、课程设计的要求
明确课程设计任务,复习编译理论知识,查阅复印相关的编译资料。
按要求完成课程设计内容,课程设计报告要求文字和图表工整、思路清晰、算法正确。
写出完整的算法框架。
编写完整的编译程序。
三、课程设计的内容
课程设计是一项综合性实践环节,是对平时实验的一个补充,课程设计内容包括课程的主要理论知识,但由于编译的知识量较复杂而且综合性较强,因而对一个完整的编译程序不适合平时实验。通过课程设计可以达到综合设计编译程序的目的。本课程的课程设计要求学生编写一个完整的编译程序,包括词法分析器、语法分析器以及实现对简单程序设计语言中的逻辑运算表达式、算术运算表达式、赋值语句、IF语句、While语句以及do…while语句进行编译,并生成中间代码和直接生汇编指令的代码生成器。
四、总体设计方案及详细设计
总体设计方案:
1.总体模块
主程序
主程序
词法分析程序
语法分析程序
中间代码生成程序
2.
表2.1 各种单词符号对应的种别码
单词符号
种别码
单词符号
种别码
bgin
1
:
17
If
2
:=
18
Then
3
20
wile
4
21
do
5
=
22
end
6
23
lettet(letter|digit)*
10
=
24
dight dight*
11
=
25
+
13
;
26
—
14
(
27
*
15
)
28
/
16
#
0
详细设计:
4.1界面导入设计
(1)一共三个选项:
①choice 1--------cifafenxi
②choice 2--------yufafenxi
③choice 3--------zhongjiandaima
(2)界面演示
图一
图二
图三
4.2词法分析程序
置初值调用扫描子程序
置初值
调用扫描子程序
输出单词二元组
输入串结束
结束
否
是
(2)具体功能的具体设计
1、cifafenxi( )
首先设置prog[n]来接收输入的语句,以‘#’来结束;
调用扫描子程序 scaner1( ),每一次得到一个类型码;
用switch判别相应输出;
直到syn1=0为止。
2、扫描子程序scaner1( )-----------------扫描输入的语句
首先设置3个变量:
①token1用来存放构成单词符号的字符串;
②sum1用来存放整型单词;
③syn1用来存放单词符号的类型码。
有关scaner1()中关键点解析:
①
while((ch== )||(ch==\n)) ch=prog[p++]; ;忽略空格
②
if(((ch=z)(ch=a))||((ch=Z)(ch=A)))
{ while(((ch=z)(ch=a))||((ch=Z)(ch=A))||((ch=0)(ch=9)))
{ token[m++]=ch;
ch=prog[p++];
}
您可能关注的文档
- 综自改造的方案.doc
- NO.2 的研究问题确定.ppt
- 2011年度注册化工工程师专业考试案例分析考试上.doc
- 饲料配方的设计.doc
- 3044-现代运输包装技术与成本控制.doc
- 生物的技术专题三、四试题.docx
- 财务管理学测试题知识.doc
- 第三篇 网络营销的战略及规划.ppt
- 浅析天津军粮城6#脱硫吸收塔喷淋耐冲刷环施工的方案V2_20140527114121252.doc
- 测试的方案测试策略.ppt
- 2024高考物理一轮复习规范演练7共点力的平衡含解析新人教版.doc
- 高中语文第5课苏轼词两首学案3新人教版必修4.doc
- 2024_2025学年高中英语课时分层作业9Unit3LifeinthefutureSectionⅢⅣ含解析新人教版必修5.doc
- 2024_2025学年新教材高中英语模块素养检测含解析译林版必修第一册.doc
- 2024_2025学年新教材高中英语单元综合检测5含解析外研版选择性必修第一册.doc
- 2024高考政治一轮复习第1单元生活与消费第三课多彩的消费练习含解析新人教版必修1.doc
- 2024_2025学年新教材高中英语WELCOMEUNITSectionⅡReadingandThi.doc
- 2024_2025学年高中历史专题九当今世界政治格局的多极化趋势测评含解析人民版必修1.docx
- 2024高考生物一轮复习第9单元生物与环境第29讲生态系统的结构和功能教案.docx
- 2024_2025学年新教材高中英语UNIT5LANGUAGESAROUNDTHEWORLDSect.doc
文档评论(0)