• / 30
  • 下载费用:10 金币  

编译原理总结.doc

关 键 词:
编译原理总结.doc
资源描述:
(1)程序设计语言• 机器语言: 由 0、1 代码构成,不需翻译就可直接执行其程序。• 汇编语言: 机器指令助记符(伪代码)形式,汇编后才可执行其程序。• 高级程序设计语言: 类自然语言和数学公式形式(2) 基本术语• 源程序(Source Program):用源语言写的程序。源语言可以是汇编语言,也可以是高级程序设计语言。• 目标程序(Target Program) :也称为“结果程序” ,是源程序经翻译程序加工以后所生成的程序。目标程序可以用机器语言表示,也可以用汇编语言或其它中间语言表示。• 翻译程序(Translating Program):是指把一个源程序翻译成逻辑上等价的目标程序的程序。源程序为其输入,目标程序为其输出。• 汇编程序(Assembler):是指把一个汇编语言写的源程序转换成等价的机器语言表示的目标程序的翻译程序。• 编译程序(Compiler):若源程序是用高级程序设计语言所写,经翻译程序加工生成目标程序,则该翻译程序就称为“编译程序” ,也可称为编译器。• 解释程序:是高级语言翻译程序的一种,他将源语言书写的源程序作为输入,解释一句后就提交计算机执行一句,并不形成目标程序,就像外语翻译中的“口译” 一样,不产生全文的翻译文本。• 运行系统(Running System):目标程序执行时,需要有一些子程序(如一些连接装配程序及一些连接库等)配合进行工作,由这些子程序组成的一个子程序库称为运行系统。• 编译系统(Compiling System):编译程序和运行系统合称编译系统。(3) 程序的翻译• 除机器语言程序外,用其它语言书写的程序都必须经过翻译才能被计算机识别。这一过程由翻译程序来完成。• 编译方式是一种分阶段进行的方式,包括翻译和运行两部分。• 前一阶段:翻译• 后一阶段:运行,由运行系统配合完成。(4) 过程1、词法分析阶段这个阶段的任务是从左到右一个字符一个字符地读入源程序,对构成源程序的字符流进行扫描和分解,从而识别出一个个单词(也称单词符号或符号 TOKEN) 。 某源程序片断如下:begin var sum, first, count: real; sum:=first+count*10 end.保留字 begin var real end标识符 sum first count sum first count 界符 .逗号, 逗号, 冒号: 分号; 加号+ 乘号* 赋值号 := 整数 10 102、语法分析阶段是编译过程的第二个阶段。语法分析的任务是在词法分析的基础上将单词序列分解成各类语法短语,如“程序” , “语句” , “表达式”等等。一般这种语法短语,也称语法单位,或语法成分,或语法范畴。语法分析所依据的是语言的语法规则,即描述程序结构的规则。通过语法分析确定整个输入串是否构成一个语法上正确的程序。 3、语义分析阶段依据语言的语义规则,对语法分析得到的语法结构分析其含义以及应进行的运算,审查源程序中有无语义错误,为代码生成阶段收集类型信息。4、中间代码生成在进行了上述的语法分析和语义分析阶段的工作之后,有的编译程序将源程序转变成一种内部表示形式,这种内部表示形式叫做中间代码。所谓“ 中间代码” 是一种结构简单,含义明确的记号系统,这种记号系统可以设计为多种多样的形式。重要的设计原则:一是容易生成;二是容易将它翻译成目标代码。5、代码优化任务:对前阶段产生的中间代码系列进行变换或改造。目的是使生成的目标代码更高效,即省时间省空间。例如上例四个四元式可优化为下面两个四元式。6、目标代码生成任务:将中间代码变换成特定机器上的绝对指令代码或可重定位的指令代码或汇编指令代码。它的工作与硬件系统结构和指令含义有关。 7、表格管理编译过程中源程序的各种信息被保留在种种不同的表格里,编译各阶段的工作都涉及到构造、查找或更新有关的表格,因此需要有表格管理的工作;8、出错处理如果编译过程中发现源程序有错误,编译程度应报告错误的性质和错误发生的地点,并且将错误所造成的影响限制在尽可能小的范围内,使得源程序的其余部分能继续被编译下去,有些编译程序还能自动校正错误,这些工作称之为出错处理。(5) 前端与后端参考上面的图,目的是为了在多种源语言和多种目标语言的开发过程中,可以灵活搭配组合,消除重复开发的工作量,提高编译系统的开发效率。(6) 遍所谓遍,是对源程序或源程序的中间形式从头到尾扫视并完成规定任务的过程。每一遍扫视可完成一个阶段或多个阶段的功能。一遍的编译程序:以语法分析程序为核心 。多遍扫描的优点:可以减少内存容量的需求,分遍后,以遍为单位分别调用编译的各个程序,各遍程序可以相互覆盖。可使各遍的编译程序相互独立,结构清晰。能够进行充分优化,产生高质量的目标程序。可
展开阅读全文
  微传网所有资源均是用户自行上传分享,仅供网友学习交流,未经上传用户书面授权,请勿作他用。
0条评论

还可以输入200字符

暂无评论,赶快抢占沙发吧。

关于本文
本文标题:编译原理总结.doc
链接地址:https://www.weizhuannet.com/p-9852649.html
微传网是一个办公文档、学习资料下载的在线文档分享平台!

微传网博客

网站资源均来自网络,如有侵权,请联系客服删除!

 网站客服QQ:80879498  会员QQ群:727456886

copyright@ 2018-2028 微传网络工作室版权所有

     经营许可证编号:冀ICP备18006529号-1 ,公安局备案号:13028102000124

收起
展开