下载安卓APP箭头
箭头给我发消息

客服QQ:3315713922

2022年软件设计师考试知识点(六十七):编译与解释

作者:匿名     来源: 软考点击数:965发布时间: 2022-01-12 20:41:48

标签: 2022年软件设计师考试知识点2022年软件设计师考点编译与解释

软考,您想通过吗?一次通过才是硬道理

  为帮助考生备考2022年软考中级软件设计师考试,课课家小编为大家整理了2022年软件设计师考试知识点(六十七):编译与解释,希望对大家备考会有帮助。

  很多考生在备考2022年软件设计师考试,课课家小编为大家整理了2022年软件设计师考试知识点(六十七):编译与解释,供考生备考复习。

  编译与解释(★★★)

  【考法分析】

  1、本知识点的考查形式主要有:给出编译与解释相关的描述,判断正误;给出编译各个阶段的描述,判断正误。

  【要点分析】

  1、解释程序,也称解释器;直接解释执行源程序,或者将源程序翻译成某种中间代码后再加以执行。

  2、编译程序,也称编译器;将源程序翻译成目标语言程序,然后再计算机上运行目标程序。

  3、两者的根本区别:编译方式下,机器上运行的是与源程序等价的目标程序,源程序和编译程序都不再参与目标程序的执行过程,因此执行时效率较高;解释方式下,解释程序和源程序(或某种等价表示)要参与到程序的运行过程中,运行程序的控制权在解释程序,边解释边执行,执行效率较低。即:解释方式,翻译程序不生成独立的目标程序,而编译方式则生成独立保持的目标程序。

  4、编译过程:

  (1)词法分析阶段:是编译过程的第一阶段,其任务是对源程序从前到后(从左到右)逐个字符扫描,从中识别出一个个“单词”符号。词法分析过程的依据是语言的词法规则,即描述“单词”结构的规则。

  词法错误:非法字符,关键字或标识符拼写错误。

  (2)语法分析阶段:其任务是在词法分析的基础上,根据语言的语法规则将单词符号序列分解成各类语法单位。通常语法分析是确定整个输入串是否构成一个语法上正确的程序。一般来说,通过编译的程序,不存在语法上的错误。

  语法错误:语法结构出错,if endif不匹配,缺分号。

  (3)语义分析阶段:其任务主要检查源程序是否包含静态语义错误(动态语义错误在执行过程中才能发现),并收集类型信息供后面的代码生成阶段使用。语义分析的一个主要工作是进行类型分析和检查。

  语义错误:死循环,零除数,其它逻辑错误。

  (4)中间代码生成:其任务是根据语义分析的输出生成中间代码。此阶段不是必须的。常见的中间代码有:树、后缀式、三地址码(四元式)。

  (5)代码优化:其任务是优化中间代码。此阶段不是必须的。

  (6)目标代码生成:是编译器工作的最后一个阶段。其任务是把中间代码变换成特定机器上的绝对指令代码、可重定位的指令代码或汇编指令代码。本阶段与具体机器密切相关。

  (7)符号表的作用是记录源程序中各个符号的必要信息,以辅助语义的正确性检查和代码生成,在编译过程中需要对符号表进行快速有效地查找、插入、修改和删除等操作。符号表的存在可以贯穿编译所有阶段。

  【备考点拨】

  1、掌握编译与解释的区别;

  2、掌握编译器的工作过程。

  >>>>>>点击进入软考报名专题

 

  相关推荐:2022年软件设计师考试知识点汇总

赞(10)
踩(0)
分享到:
华为认证网络工程师 HCIE直播课视频教程