编译原理9教学ppt课件

编译原理9教学ppt课件

ID:33772374

大小:459.51 KB

页数:45页

时间:2019-03-01

编译原理9教学ppt课件_第1页
编译原理9教学ppt课件_第2页
编译原理9教学ppt课件_第3页
编译原理9教学ppt课件_第4页
编译原理9教学ppt课件_第5页
资源描述:

《编译原理9教学ppt课件》由会员上传分享,免费在线阅读,更多相关内容在教育资源-天天文库

1、编译原理杨阳信息工程系A3-303Tel:13390753979Email:chris_flower@163.com编译原理王挺计算机系602教研室Tel:4573649(O)Email:tingwang@nudt.edu.cn网上教学系统:070606302:编译原理http://sei.nudt.edu.cn/cp第一章引论本课程介绍程序设计语言编译程序构造的基本原理和基本实现技术.理论40课时+上机16课时课设一周上机:A3-30413-16周周一下午5-8节第一章引论编译理论与方法计算机科学与技术中理论和实践相结合的最好典范ACM图灵奖,授予在计算机技

2、术领域作出突出贡献的科学家程序设计语言、编译理论与方法约占1/3源语言程序目标语言程序翻译程序翻译一.什么是编译程序翻译程序把某一种语言程序(称为源语言程序)等价地转换成另一种语言程序(称为目标语言程序)的程序高级语言程序机器语言程序结果编译程序翻译运行一.什么是编译程序编译程序(compiler)把某一种高级语言程序等价地转换成另一种低级语言程序(如汇编语言或机器语言程序)的程序诊断编译程序优化编译程序交叉编译程序可变目标编译程序一.什么是编译程序解释程序把源语言写的源程序作为输入,但不产生目标程序,而是边解释边执行源程序本身源程序结果解释程序解释执行编译程

3、序vs.解释程序编译解释二.编译过程把英文翻译为中文识别出句子中的一个个单词;分析句子的语法结构;根据句子的含义进行初步翻译;对译文进行修饰;写出最后的译文。词法分析语法分析中间代码产生优化目标代码产生二.编译过程编译程序的工作一般分为五个阶段:词法分析语法分析中间代码产生优化目标代码产生1.词法分析任务:输入源程序,对构成源程序的字符串进行扫描和分解,识别出一个个单词符号。依循的原则:构词规则描述工具:有限自动机FORI:=1TO100DO保留字标识符赋值号整常数保留字整常数保留字2.语法分析任务:在词法分析的基础上,根据语言的语法规则把单词符号串分解成各类

4、语法单位。依循的原则:语法规则描述工具:上下文无关文法Z:=X+0.618*Y算术表达式,赋值语句3.中间代码产生任务:对各类不同语法范畴按语言的语义进行初步翻译。依循的原则:语义规则中间代码:三元式,四元式,树形结构等Z:=X+0.618*Y翻译成四元式为(1)*0.618YT1(2)+XT1T2(3):=T2_Z4.优化任务:对于前阶段产生的中间代码进行加工变换,以期在最后阶段产生更高效的目标代码。依循的原则:程序的等价变换规则FORK:=1TO100DOBEGINM:=I+10*K;N:=J+10*K;END中间代码(一)序号OPROPN1OPN2RES

5、ULT注释(1):=1KK:=1(2)j<100K(9)if(100

6、K+1(8)j(4)goto(4)(9)300次加法5.目标代码产生任务:把中间代码变换成特定机器上的目标代码。依赖于硬件系统结构和机器指令的含义目标代码三种形式:绝对指令代码:可直接运行可重新定位指令代码:需要连接装配汇编指令代码:需要进行汇编模块A…a模块B…b模块C…c模块A…a模块B…b模块C…c模块A…a模块D…模块C…c5.目标代码产生例:b=a+2MOVa,R1ADD#2,R1MOVR1,b0001010000000000*00110110000000100100010000000100*L=000011110001010000001111001

7、10110000000100100010000010011三.编译程序结构编译程序总框四元式单词符号语法单位四元式目标代码词法分析器语法分析器语义分析与中间代码生成器优化段源程序表格管理出错处理目标代码生成器2.表格和表格管理常见的表格:符号名表,常数表,标号表,入口名表,过程引用表。格式:名字信息例:PASCAL程序段:PROCEDUREINCWAP(M,N:INTEGER);LABELSTART;VARK:INTEGER;BEGINSTART:K:=M+1;M:=N+4;N:=K;END.PROCEDUREINCWAP(M,N:INTEGER);LABEL

8、START;VARK:INTEGER;

当前文档最多预览五页,下载文档查看全文

此文档下载收益归作者所有

当前文档最多预览五页,下载文档查看全文
温馨提示:
1. 部分包含数学公式或PPT动画的文件,查看预览时可能会显示错乱或异常,文件下载后无此问题,请放心下载。
2. 本文档由用户上传,版权归属用户,天天文库负责整理代发布。如果您对本文档版权有争议请及时联系客服。
3. 下载前请仔细阅读文档内容,确认文档内容符合您的需求后进行下载,若出现内容与标题不符可向本站投诉处理。
4. 下载文档时可能由于网络波动等原因无法下载或下载错误,付费完成后未能成功下载的用户请联系客服处理。