第1章-编译概述

上传人:仙*** 文档编号:157993980 上传时间:2022-10-02 格式:PPT 页数:57 大小:597.50KB
收藏 版权申诉 举报 下载
第1章-编译概述_第1页
第1页 / 共57页
第1章-编译概述_第2页
第2页 / 共57页
第1章-编译概述_第3页
第3页 / 共57页
资源描述:

《第1章-编译概述》由会员分享,可在线阅读,更多相关《第1章-编译概述(57页珍藏版)》请在装配图网上搜索。

1、 2022年10月2日 北京林业大学信息学院北京林业大学信息学院高级语言汇编语言SOURCE PROGRAMAssemble PROGRAM?翻译程序?翻译程序?TRANSLATER 程序设计语言是计算机软件专业的重要核心程序设计语言是计算机软件专业的重要核心 学习编程的历程:学习编程的历程:C C语言汇编语言数据结构语言汇编语言数据结构 2022年10月2日 北京林业大学信息学院北京林业大学信息学院 必修主干课程必修主干课程,操作系统和编译系统构成程序,操作系统和编译系统构成程序设计者与计算机之间的基本界面。设计者与计算机之间的基本界面。通过学习该课程,掌握编译的基本理论、常用通过学习该课程

2、,掌握编译的基本理论、常用的编译技术,了解编译过程及编译系统结构和的编译技术,了解编译过程及编译系统结构和机理。能运用所学技术解决实际问题,能机理。能运用所学技术解决实际问题,能独立独立编写一个小型编译系统编写一个小型编译系统。此外,通过学习编译原理可以更好地理解程序此外,通过学习编译原理可以更好地理解程序语言的内部机制语言的内部机制,从而更好地理解和运用程序从而更好地理解和运用程序设计语言。能运用编译程序构造的原理和技术设计语言。能运用编译程序构造的原理和技术完成完成相关软件工具的设计和开发相关软件工具的设计和开发工作。工作。2022年10月2日 北京林业大学信息学院北京林业大学信息学院 计

3、算机软件学科计算机软件学科理论与实践相结合理论与实践相结合的典范。的典范。在学习过程中既要注重该领域在理论上取得在学习过程中既要注重该领域在理论上取得的完美结论,也要注重这些理论在实际中的的完美结论,也要注重这些理论在实际中的应用。应用。2022年10月2日 北京林业大学信息学院北京林业大学信息学院 要求先学习以下课程要求先学习以下课程 1.程序设计语言程序设计语言 2.算法与数据结构算法与数据结构:栈分配、堆分配、静态分配等各:栈分配、堆分配、静态分配等各种存储分配方式。线性表、二叉查找树、哈希表等多种存储分配方式。线性表、二叉查找树、哈希表等多种数据结构。种数据结构。3.离散数学离散数学:

4、集合论与数理逻辑是进一步学习形式语:集合论与数理逻辑是进一步学习形式语言与自动机理论的数学基础。言与自动机理论的数学基础。最好学习过或同时学习以下课程最好学习过或同时学习以下课程 1.软件工程软件工程:掌握大型程序设计以及工程化的软件生:掌握大型程序设计以及工程化的软件生产方法。产方法。2.形式语言与自动机形式语言与自动机:相当于本课程中词法分析与语:相当于本课程中词法分析与语法分析的理论基础。法分析的理论基础。2022年10月2日 北京林业大学信息学院北京林业大学信息学院 李冬梅,施海虎,李冬梅,施海虎,编译原理编译原理,人民邮电出版社,人民邮电出版社教材教材参考书参考书 李建中译,李建中译

5、,编译原理编译原理(龙书龙书),机械工业出版社,机械工业出版社 陈火旺陈火旺 刘春林等,刘春林等,程序设计语言编译原理程序设计语言编译原理,国,国防工业出版社防工业出版社 吕映芝,张素琴等,吕映芝,张素琴等,编译原理编译原理,清华大学出版社,清华大学出版社 2022年10月2日 北京林业大学信息学院北京林业大学信息学院 平时(平时(30%30%)无故旷课:无故旷课:一本教材,一本教材,认真听课认真听课:以讲义为主,板书为:以讲义为主,板书为辅辅-做适当的笔记做适当的笔记 认真完成课堂和课后认真完成课堂和课后作业作业 完成要求的完成要求的课外实验课外实验内容内容 期末(期末(70%70%):闭卷

6、笔试闭卷笔试课程特点:理论性强,算法复杂课程特点:理论性强,算法复杂 2022年10月2日 北京林业大学信息学院北京林业大学信息学院第第1 1章章编译概述编译概述 掌握编译程序中所涉及的有关名词术语掌握编译程序中所涉及的有关名词术语2.2.理解编译程序总的框架,明确编译程序工理解编译程序总的框架,明确编译程序工作的基本过程及各阶段的基本任务作的基本过程及各阶段的基本任务教学目标教学目标 2022年10月2日 北京林业大学信息学院北京林业大学信息学院1.1.程序的翻译程序的翻译1.2.编译程序的组成编译程序的组成1.3.编译程序构造编译程序构造 1.4.编译技术的应用及发展编译技术的应用及发展

7、2022年10月2日 北京林业大学信息学院北京林业大学信息学院 低级语言低级语言(Low level Language)字位码、机器语言、汇编语言字位码、机器语言、汇编语言特点:与特定的机器有关,功效高,但使用复杂、繁特点:与特定的机器有关,功效高,但使用复杂、繁琐、费时、易出错琐、费时、易出错 高级语言高级语言 -Fortran、Pascal、C 语言等语言等特点:不依赖具体机器,移植性好、对用户要求低、特点:不依赖具体机器,移植性好、对用户要求低、易使用、易维护等。易使用、易维护等。1.11.1程序的翻译程序的翻译 2022年10月2日 北京林业大学信息学院北京林业大学信息学院源程序源程序

8、 用汇编语言或高级语言编写的程序称为源程序用汇编语言或高级语言编写的程序称为源程序目标程序目标程序 用用目标语言目标语言所表示的程序所表示的程序 目标语言:可以是介于源语言和机器语言之间的目标语言:可以是介于源语言和机器语言之间的“中中间语言间语言”,可以是某种机器的机器语言,可以是某种机器的机器语言,也可以是某机器的也可以是某机器的汇编语言。汇编语言。翻译程序翻译程序 将将源程序源程序转换为转换为目标程序目标程序的程序称为翻译程序。它是的程序称为翻译程序。它是指各种语言的翻译器,包括汇编程序和编译程序,是汇编指各种语言的翻译器,包括汇编程序和编译程序,是汇编程序、编译程序以及各种变换程序的总

9、称。程序、编译程序以及各种变换程序的总称。2022年10月2日 北京林业大学信息学院北京林业大学信息学院源程序、翻译程序、目标程序源程序、翻译程序、目标程序 三者关系:三者关系:源程序源程序翻译程序翻译程序目标程序目标程序SOURCE PROGRAMTRANSLATER OBJECT PROGRAM即源程序是翻译程序的输入,目标程序是翻译程序的输出即源程序是翻译程序的输入,目标程序是翻译程序的输出S OI 2022年10月2日 北京林业大学信息学院北京林业大学信息学院汇编程序汇编程序 若源程序用汇编语言书写,经过翻译程序得到用机器语言若源程序用汇编语言书写,经过翻译程序得到用机器语言表示的程序

10、,这时的翻译程序就称之为汇编程序,这种翻译过表示的程序,这时的翻译程序就称之为汇编程序,这种翻译过程称为程称为“汇编汇编”(Assemble)编译程序编译程序 若源程序是用高级语言书写,经加工后得到目标程序,上述若源程序是用高级语言书写,经加工后得到目标程序,上述翻译过程称翻译过程称“编译编译”(Compile)汇编程序与编译程序都是汇编程序与编译程序都是翻译程序翻译程序,主要区别是加工对象的,主要区别是加工对象的不同。由于汇编语言格式简单,常与机器语言之间有一一对不同。由于汇编语言格式简单,常与机器语言之间有一一对应的关系。汇编程序所要做的翻译工作比编译程序简单的多应的关系。汇编程序所要做的

11、翻译工作比编译程序简单的多。2022年10月2日 北京林业大学信息学院北京林业大学信息学院 编译或汇编阶段编译或汇编阶段 运行阶段运行阶段源程序源程序目标程序目标程序编译程序编译程序或汇编程序或汇编程序输出数据输出数据目标程序目标程序+运行子程序运行子程序输入数据输入数据 2022年10月2日 北京林业大学信息学院北京林业大学信息学院 工作过程工作过程解释程序(解释程序(Interpreter)(类似于口译,不生成目标代码)(类似于口译,不生成目标代码)对源程序进行解释执行的程序。对源程序进行解释执行的程序。输出数据输出数据解释程序解释程序输入数据输入数据源程序源程序 特点:与编译系统比较,解

12、释系统较简单、特点:与编译系统比较,解释系统较简单、可移植性好,易于查错,但速度慢可移植性好,易于查错,但速度慢 2022年10月2日 北京林业大学信息学院北京林业大学信息学院源程序源程序编译程序编译程序源程序的中间形式源程序的中间形式输出数据输出数据解释程序解释程序输入数据输入数据 2022年10月2日 北京林业大学信息学院北京林业大学信息学院.java java源程序文件.class 二进制字节码文件Java虚拟机(JVM)本地计算机系统编译例如例如JavaJava语言语言 2022年10月2日 北京林业大学信息学院北京林业大学信息学院 所谓编译过程是指将所谓编译过程是指将高级语言程序高级

13、语言程序翻译为等价的翻译为等价的目标目标程序程序的过程。的过程。翻译外文资料:翻译外文资料:1、能识别出句子中的一个单词;、能识别出句子中的一个单词;2、分析句子的语法结构;、分析句子的语法结构;3、根据句子的含义进行初步翻译;、根据句子的含义进行初步翻译;4、对译文进行修饰;、对译文进行修饰;5、写出最后的译文。、写出最后的译文。1.21.2编译程序的组成编译程序的组成 2022年10月2日 北京林业大学信息学院北京林业大学信息学院 翻译和编译工作的比较翻译和编译工作的比较翻译外文翻译外文编译程序编译程序分析分析识别单词识别单词分析句子分析句子根据语义进根据语义进行初步翻译行初步翻译词法分析

14、词法分析语法分析语法分析语义分析、生成中间代码语义分析、生成中间代码综合综合修辞加工修辞加工写出译文写出译文代码优化代码优化目标代码生成目标代码生成编译过程编译过程 2022年10月2日 北京林业大学信息学院北京林业大学信息学院词法分析词法分析语法分析语法分析语义分析及中间代码生成语义分析及中间代码生成代码优化代码优化目标代码生成目标代码生成习惯上是将编译过程划分为习惯上是将编译过程划分为5 5个基本阶段:个基本阶段:编译过程编译过程 2022年10月2日 北京林业大学信息学院北京林业大学信息学院单词单词:是语言的基本语法单位 保留字保留字(如:if、else、while)标识符标识符(如:m

15、ax、min、str)常数常数 (如:12、6.8、a)分界符分界符(如:+、-、*、/、;、(、)字符序列字符序列任务:任务:根据根据词法规则词法规则分析和识别单词单词一、词法分析一、词法分析编码形式编码形式 2022年10月2日 北京林业大学信息学院北京林业大学信息学院词法分析程序的结果词法分析程序的结果-二元式二元式y=x+r*6单词值单词值单词类别单词类别y标识符标识符=分界符(赋值)分界符(赋值)x标识符标识符+分界符(加号)分界符(加号)r标识符标识符*分界符(乘号)分界符(乘号)6常数常数 2022年10月2日 北京林业大学信息学院北京林业大学信息学院 词法分析词法分析(lexi

16、cal analysis or scanning)(lexical analysis or scanning)-The stream of characters making up a-The stream of characters making up a source program is read from left to right source program is read from left to right and grouped into tokens,which are and grouped into tokens,which are sequences of chara

17、cters that have a sequences of characters that have a collective meaning.collective meaning.单词单词-token-token 保留字保留字-reserved word-reserved word 标识符标识符 -identifier(user-defined name)-identifier(user-defined name)2022年10月2日 北京林业大学信息学院北京林业大学信息学院任务:任务:根据根据语法规则语法规则(即语言的文法),分析并识(即语言的文法),分析并识别出各种别出各种语法成分语法

18、成分(如表达式、语句、函数等),(如表达式、语句、函数等),并进行并进行语法正确性检查语法正确性检查。二二、语法分语法分析(编译程序的核心)析(编译程序的核心)文法文法:=:=“=”“=”:=:=“+”“+”|“*”:=“(”:=“(”“)”“)”|2022年10月2日 北京林业大学信息学院北京林业大学信息学院赋值语句赋值语句标识符标识符标识符标识符整数整数标识符标识符表达式表达式=yx表达式表达式表达式表达式+r6表达式表达式表达式表达式*:=:=“=”“=”:=:=“+”“+”|“*”:=“(”:=“(”“)”“)”|y =x+r*6 2022年10月2日 北京林业大学信息学院北京林业大学

19、信息学院赋值语句赋值语句标识符标识符表达式表达式表达式表达式表达式表达式表达式表达式标识符标识符整数整数标识符标识符表达式表达式y=x+r*6语法分析的结果语法分析的结果-语法语法树树 2022年10月2日 北京林业大学信息学院北京林业大学信息学院有关术语有关术语 语法分析语法分析(syntax analysis or parsing)The purpose of syntax analysis is to determine the source programs phrase structure.This process is also called parsing.The source

20、program is parsed to check whether it conforms to the source languages syntax,and to construct a suitable representation of its phrase structure.2022年10月2日 北京林业大学信息学院北京林业大学信息学院任务:任务:依据语义规则对识别出的各种语法成依据语义规则对识别出的各种语法成分析其分析其含义含义,并进行初步翻译,生成,并进行初步翻译,生成中间代码中间代码。三、语义分析及中间代码生成三、语义分析及中间代码生成静态:静态:分析语法成份的含义,进行语

21、义上的正确性检查分析语法成份的含义,进行语义上的正确性检查动态:动态:根据相应语义,生成根据相应语义,生成中间代码(中间代码(介于源语言和目介于源语言和目标语言之间的中间语言形式)标语言之间的中间语言形式)2022年10月2日 北京林业大学信息学院北京林业大学信息学院生成中间代码的目的:生成中间代码的目的:1、利于代码优化、利于代码优化2、利于目标代码的移植、利于目标代码的移植中间代码的形式:中间代码的形式:四元式、三元式、逆波兰表示四元式、三元式、逆波兰表示 2022年10月2日 北京林业大学信息学院北京林业大学信息学院四元式四元式其中t1、t2、t3为编译程序引入的临时工作单元例:y =x

22、+r*6运算符左运算对象 右运算对象 结果(1)inttoreal 6-t1(2)*rt1t2(3)+t2xt3(4)=t3y 2022年10月2日 北京林业大学信息学院北京林业大学信息学院有关术语有关术语 语义分析语义分析(semantic analysis)The parsed program is further analyzed to determine whether it conforms to the source languages contextual constraints:scope rules,type rulese.g.To relate each applied o

23、ccurrence of an identifier in the source program to the corresponding declaration.2022年10月2日 北京林业大学信息学院北京林业大学信息学院有关术语有关术语 中间代码生成中间代码生成(intermediate code generation)This is where the intermediate representation of the source program is created.We want this representation to be easy to generate,and ea

24、sy to translate into the target program.The representation can have a variety of forms,but a common one is called three-address code or 4-tuple code.2022年10月2日 北京林业大学信息学院北京林业大学信息学院任务:任务:对中间代码进行加工变换加工变换,以得到高质量的目标代码四、代码优化四、代码优化运算符左运算对象 右运算对象 结果(1)Inttoreal6-t1(2)*rt1t2(3)+t2xt3(4)=t3y运算符左运算对象右运算对象结果(1

25、)*r6.0t1(2)+t1xy(1)inttoreal6-t1(4)=t3y例:y =x+r*6 2022年10月2日 北京林业大学信息学院北京林业大学信息学院有关术语有关术语 代码优化代码优化(Intermediate code optimization)The optimizer accepts input in the intermediate representation and output a version still in the intermediate representation.In this phase,the compiler attempts to produc

26、e the smallest,fastest and most efficient running result by applying various techniques.2022年10月2日 北京林业大学信息学院北京林业大学信息学院五、目标代码生成五、目标代码生成任务:任务:把中间代码变换成特定机器上的低级语言代码低级语言代码movr,R1mul#6.0,R1movx,R2addR1,R2movR2,y运算符左运算对象右运算对象结果(1)*r6.0t1(2)+t1xy 2022年10月2日 北京林业大学信息学院北京林业大学信息学院目标代码生成程序代码优化程序语义分析生成中间代码语法分析程

27、序词法分析程序编译过程小结编译过程小结S.PO.P 2022年10月2日 北京林业大学信息学院北京林业大学信息学院 按逻辑功能不同,可将编译过程划分为五个基本阶按逻辑功能不同,可将编译过程划分为五个基本阶 段,与此相对应,我们将实现整个编译过程的编译程序划段,与此相对应,我们将实现整个编译过程的编译程序划 分为五个逻辑阶段(即五个逻辑子过程)。分为五个逻辑阶段(即五个逻辑子过程)。每个阶段中都要有:符号表管理符号表管理和错误处理错误处理 2022年10月2日 北京林业大学信息学院北京林业大学信息学院诊察错误,并能报告用户错误性质和位置诊察错误,并能报告用户错误性质和位置错误处理能力的优劣是衡量

28、编译程序质量好坏的错误处理能力的优劣是衡量编译程序质量好坏的一个重要指标。一个重要指标。填表:把源程序中的信息和编译过程中所产生的填表:把源程序中的信息和编译过程中所产生的信息登记在表格中信息登记在表格中查表:在随后的编译过程中同时又要不断的查找查表:在随后的编译过程中同时又要不断的查找这些表格中的信息这些表格中的信息符号表管理符号表管理错误处理错误处理编译程序的逻辑结构编译程序的逻辑结构 2022年10月2日 北京林业大学信息学院北京林业大学信息学院典型的编译程序具有典型的编译程序具有7个逻辑部分个逻辑部分S.PO.P语义分析及语义分析及生成中间代码生成中间代码程序程序代码生成程序代码生成程

29、序代码优化代码优化程序程序语法分析程序语法分析程序词法分析程序词法分析程序错错误误处处理理符符号号表表管管理理 2022年10月2日 北京林业大学信息学院北京林业大学信息学院根据编译程序各部分功能,将编译程序分成根据编译程序各部分功能,将编译程序分成前端前端和和后端后端 前端前端:通常将与:通常将与源程序源程序有关的编译部分称为前端。有关的编译部分称为前端。词法分析、语法分析、语义分析、中间代码生成词法分析、语法分析、语义分析、中间代码生成 -分析部分分析部分 特点:与特点:与源语言源语言有关有关 后端后端:与:与目标机目标机有关的部分称为后端。有关的部分称为后端。代码优化、代码生成代码优化、

30、代码生成-综合部分综合部分 特点:与特点:与目标机目标机有关有关编译程序的前端和后端编译程序的前端和后端 2022年10月2日 北京林业大学信息学院北京林业大学信息学院.java java源程序文件.class 二进制字节码文件Java虚拟机(JVM)本地计算机系统编译同一前端同一前端+不同后端不同后端 不同机器构成同一语言的编译程序不同机器构成同一语言的编译程序例如例如JavaJava语言语言 2022年10月2日 北京林业大学信息学院北京林业大学信息学院 同一前端同一前端+不同后端不同后端 不同机器构成同一语言的编译程序不同机器构成同一语言的编译程序例如例如.NET.NET框架框架 202

31、2年10月2日 北京林业大学信息学院北京林业大学信息学院 不同前端不同前端+同一后端同一后端 同一机器生成几个语言的编译程序同一机器生成几个语言的编译程序例如例如GCCGCC 2022年10月2日 北京林业大学信息学院北京林业大学信息学院 第一遍第一遍 第二遍第二遍 S.P中间形式中间形式1S.P中间形式中间形式2C2C1S.PO.P 上一遍的结果是下一遍的输入,最后一遍生成目标程序。上一遍的结果是下一遍的输入,最后一遍生成目标程序。对源程序(包括源程序中间形式)从头到尾扫描对源程序(包括源程序中间形式)从头到尾扫描一次,并做有关的加工处理一次,并做有关的加工处理 ,生成新的源程序中,生成新的

32、源程序中间形式或目标程序,通常称之为一间形式或目标程序,通常称之为一遍遍。遍遍 2022年10月2日 北京林业大学信息学院北京林业大学信息学院一遍扫描即可完成整个编译工作的称为一遍扫描即可完成整个编译工作的称为一遍扫描编译程序一遍扫描编译程序遍的划分视具体情况而定(内存的大小、源语言的繁简、遍的划分视具体情况而定(内存的大小、源语言的繁简、目标程序质量的高低)目标程序质量的高低)优点优点:1 1、减少对内存容量的要求、减少对内存容量的要求2 2、编译程序结构清晰、各遍功能独立、相互联系简单、编译程序结构清晰、各遍功能独立、相互联系简单缺点缺点:增加读写中间文件的次数,降低效率增加读写中间文件的

33、次数,降低效率 2022年10月2日 北京林业大学信息学院北京林业大学信息学院构造编译程序必须精通构造编译程序必须精通:源源 语语 言言 目标语言目标语言 编译方法编译方法1.31.3编译程序的构造编译程序的构造 2022年10月2日 北京林业大学信息学院北京林业大学信息学院开发编译程序的途径开发编译程序的途径:自展法自展法 工具法工具法 自动生成法自动生成法 移植法移植法 2022年10月2日 北京林业大学信息学院北京林业大学信息学院自展法自展法 2022年10月2日 北京林业大学信息学院北京林业大学信息学院应用:应用:大部分软件工具的开发,都要使用大部分软件工具的开发,都要使用编译技术和方

34、法编译技术和方法 语法制导的结构化编辑器语法制导的结构化编辑器 程序格式化工具程序格式化工具 软件测试工具软件测试工具静态分析器:不可能执行的代码、定义后未引用的变量静态分析器:不可能执行的代码、定义后未引用的变量动态测试工具:运行后与期望结果比较动态测试工具:运行后与期望结果比较 程序理解工具:确定调用关系,画出流程图程序理解工具:确定调用关系,画出流程图 高级语言的翻译工具高级语言的翻译工具1.41.4编译技术的应用及发展编译技术的应用及发展 2022年10月2日 北京林业大学信息学院北京林业大学信息学院其它应用:其它应用:v文本编辑器文本编辑器v信息检索系统信息检索系统v模式识别器模式识

35、别器v排版、绘图系统排版、绘图系统 2022年10月2日 北京林业大学信息学院北京林业大学信息学院并行编译技术并行编译技术 目的:提高并行计算机体系结构的性能,超目的:提高并行计算机体系结构的性能,超大规模计算的日益增长的需求大规模计算的日益增长的需求 两种实现方法两种实现方法 利用重构技术将串行程序并行化利用重构技术将串行程序并行化 直接编写并行程序直接编写并行程序交叉编译技术交叉编译技术发展发展交叉编译器由于目标机指令系统与宿主机的指令系统不同,编译由于目标机指令系统与宿主机的指令系统不同,编译时将应用程序的源程序在宿主机上生成目标机代码,时将应用程序的源程序在宿主机上生成目标机代码,称为

36、称为交叉编译交叉编译。SOIOAB 2022年10月2日 北京林业大学信息学院北京林业大学信息学院q语言开发环境中的伙伴程序语言开发环境中的伙伴程序编辑器(编辑器(editor)预处理器(预处理器(preprocessor)连接程序(连接程序(linker)装配程序(装配程序(loader)调试程序(调试程序(debugger)2022年10月2日 北京林业大学信息学院北京林业大学信息学院小结小结 内容内容 1 1 什么是编译程序什么是编译程序 2 2 编译过程和编译程序的结构编译过程和编译程序的结构 3 3 为什么要学习编译程序为什么要学习编译程序 重点重点 对编译程序的功能和结构做一综述对

37、编译程序的功能和结构做一综述 难点难点 了解编译程序各个成分在编译阶段的逻辑关系了解编译程序各个成分在编译阶段的逻辑关系以及他们怎样作为一个整体完成编译任务的以及他们怎样作为一个整体完成编译任务的小结小结 2022年10月2日 北京林业大学信息学院北京林业大学信息学院习题习题1 1、2 2、3 3小结小结小结小结小结小结小结小结小结小结小结小结小结小结思考题思考题 2022年10月2日 北京林业大学信息学院北京林业大学信息学院1.1.判断下面的陈述是否正确。判断下面的陈述是否正确。(1)编译程序的五个组成部分缺一不可。)编译程序的五个组成部分缺一不可。(2)高级语言程序到低级语言程序的转换是基

38、)高级语言程序到低级语言程序的转换是基于语义的等价变换。于语义的等价变换。(3)含有优化部分的编译程序的执行效率高。)含有优化部分的编译程序的执行效率高。(4)因为编译程序和解释程序具有不同的功能)因为编译程序和解释程序具有不同的功能,所以它们的实现技术也完全不同。,所以它们的实现技术也完全不同。(5)编译程序和解释程序的根本区别在于解释)编译程序和解释程序的根本区别在于解释程序对源程序并没有真正进行翻译。程序对源程序并没有真正进行翻译。(6)无论一遍扫描的编译器还是多遍扫描的编)无论一遍扫描的编译器还是多遍扫描的编译器都要对源程序扫描一遍。译器都要对源程序扫描一遍。2022年10月2日 北京林业大学信息学院北京林业大学信息学院2 2计算机执行用高级语言编写的程序有哪些途计算机执行用高级语言编写的程序有哪些途径?它们之间的主要区别是什么?径?它们之间的主要区别是什么?3 3画出编译程序的总体逻辑结构图,简述各部画出编译程序的总体逻辑结构图,简述各部分的主要功能。分的主要功能。2022年10月2日 北京林业大学信息学院北京林业大学信息学院练习练习请指出下列错误信息是编译的哪个阶段报告的请指出下列错误信息是编译的哪个阶段报告的else没有匹配的没有匹配的if;使用的函数没有定义;使用的函数没有定义;(1)在数中出现非数字字符。在数中出现非数字字符。

展开阅读全文
温馨提示:
1: 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
2: 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
3.本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
5. 装配图网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
关于我们 - 网站声明 - 网站地图 - 资源地图 - 友情链接 - 网站客服 - 联系我们

copyright@ 2023-2025  zhuangpeitu.com 装配图网版权所有   联系电话:18123376007

备案号:ICP2024067431-1 川公网安备51140202000466号


本站为文档C2C交易模式,即用户上传的文档直接被用户下载,本站只是中间服务平台,本站所有文档下载所得的收益归上传人(含作者)所有。装配图网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。若文档所含内容侵犯了您的版权或隐私,请立即通知装配图网,我们立即给予删除!