- 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
- 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
- 4、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
- 5、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们。
- 6、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
- 7、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
1.1 程序设计语言与程序 ;;程序设计语言的分类 ;程序及其结构 ;程序及其结构 ;程序及其结构 ; 绝对机器代码程序 ;1.2 编译程序 ;;解释:翻译一句执行一句,边翻译边执行,直到程序结束。
与编译的区别:不生成等价的目标代码程序。
优点:解释方式便于程序的调试。
(编译方式只需翻译一次,且目标程序的执行速度快) ; 词法分析 ;主要任务:
从左到右扫描源程序,逐一读入构成源程序的字符流,识别出
其中的一个个单词,识别出的单词称单词符号,也简称符号。
单词是高级语言程序中有实际意义的最小语法单位。
单词构成规则 —— 词法规则或构词法
(单词识别的依据)
单词内码形式 —— 二元式
(指出了单词的类别和自身值);(1) ( 标识符, z )
(2) ( 等号??? = )
(3) ( 标识符, x )
(4) ( 加号, + )
(5) ( 标识符, a )
(6) ( 取余号,%)
(7) ( 整数, 3 )
(8) ( 乘号, * )
(9) ( 左括号, ( )
(10)(保留字,int )
(11)( 右括号, ) );任务
“组词成句”,根据单词分析出组成源程序的各类语法单位,
并指出其中的语法错误。
语法单位——由源程序的单词构成
(如表达式、语句、……乃至整个程序。)
语法单位的构成规则——语法规则。
一个语言的词法规则和语法规则定义了一个程序的形式结构。
语法单位的表示——语法树; <赋值语句> ;任务:分析出语法单位具体的动作意义,进行初步翻译,生成与源程序
等价的中间代码程序。
语义: 定义一个程序所表示的意义,用语义规则描述。
中间代码:指令应结构简单、含义明确,易于实现源程序——中间代码
——目标代码三者之间的转换。
中间代码常用形式: 逆波兰式、三元式、四元式等。
四元式: (运算符,对象1,对象2,结果);;任务:将中间代码程序变换成目标代码程序。
目标代码: 特定机器上的绝对指令代码
可重定位的指令代码
汇编指令代码
这一阶段任务的实现与硬件系统的结构、目标指令的选择、变量
存储空间的分配、寄存器、后缓寄存器的调度等均有关系。;表格管理 : 为完成编译而建立并使用一些表格,以记录各种信息。
信息登录:编译的各个阶段(尤其是词法语法、语义分析阶段)。
信息使用:各阶段的分析和翻译。;以上为编译过程的典型的处理模式。
并非所有的编译过程都有这些阶段。
(可以不生成中间代码、不进行代码优化)
常将编译的这五个阶段划分成两大部分:
前三个阶段 —— 分析部分
后两个阶段 —— 综合部分
; 词法分析程序 ;后端程序:由与源语言无关,与中间代码有关,主要依赖于目标机的工
作组合而成。
(与目标机有关的代码优化、目标代码生成、相关的表格管理
和出错处理等。) ;作用:;“遍”:对源程序或等价的中间语言程序从头到尾扫描,完成规定的
任务,并生成新的中间结果或目标程序,称一“遍”。
在一“遍”中可完成编译的一个或多个阶段的任务。
源语言的特征和机器的特征决定编译程序究竟可以划分成几“遍”。;第二遍; 编译程序的构造与三个方面有关
源语言
结构、含义和用途等。
是准确描述语言、构造编译程序的出发点。
文档评论(0)