软考在线  |  计算机技术与软件专业技术资格(水平)考试   |   [请选择科目]
[ 成为 VIP会员 ]        登录  |  注册      我的  购物车
0
 
科目切换  联系我们 
    
  |   [请选择科目]

VIP:有效提升20分!  真题  历年真题 (可免费开通)/  百科全书/ 机考模拟平台/  最难真题榜/  自测/  攻打黄金十二宫/  真题检索/  真题下载/  真题词库
知识   必会知识榜/  最难知识榜/  知识点查询/      文档   学习计划/  精华笔记/  试题文档     纸质图书   《百科全书》HOT!!/         /        首页/  专区/  手机版/ 
免费智能真题库 > 历年试卷 > 软件设计师 > 2023年下半年 软件设计师 上午试卷 综合知识
  第40题      
  知识点:   编译过程概述   解释程序的基本原理
  章/节:   计算机软件知识       

 
对高级语言源程序进行编译或解释的过程可以分为多个阶段,解释方式不包含(48)阶段。
 
 
  A.  目标代码生成
 
  B.  语法分析
 
  C.  词法分析
 
  D.  语义分析
 
 
 确定 并 查看答案解析     知识点讲解  我要标记      有奖找茬      上一题        下一题 
 

 
  第22题    2014年上半年  
   35%
编译程序对高级语言源程序进行编译的过程中,要不断收集、记录和使用源程序中一些相关符号的类型和特征等信息,并将其存入 (22) ..
  第22题    2012年上半年  
   19%
算术表达式x-(y+c)*8的后缀式是(22) (-、+、*表示算术的减、加、乘运算,运算符的优先级和结合性遵循惯例)。
  第49题    2017年下半年  
   9%
某确定的有限自动机(DFA)的状态转换图如下图所示(0是初态,4是终态),则该DFA能识别( )。

 
  第20题    2016年上半年  
   46%
以下关于高级程序设计语言实现的编译和解释方式的叙述中,正确的是(20)。
  第50题    2013年上半年  
   32%
编译过程中,对高级语言程序语句的翻译主要考虑声明语句和可执行语句。对声明语句,主要是将所需要的信息正确地填入合理组织的(..
  第36题    2023年下半年  
   0%
编译程序对C语言源程序进行语法分析时,可以确定(22)。
   知识点讲解    
   · 编译过程概述    · 解释程序的基本原理
 
       编译过程概述
        编译程序的功能是把用高级语言书写的源程序翻译成与之等价的目标程序。编译过程划分成词法分析、语法分析、语义分析、中间代码生成、代码优化和目标代码生成6个阶段,实际的编译器可能会将其中的某些阶段结合在一起进行处理,比如说表格管理和出错处理与上述6个阶段都有联系。
        1)词法分析阶段
        词法分析阶段的任务是对源程序从前到后(从左到右)逐个字符进行扫描,从中识别出一个个"单词"符号。"单词"符号是程序设计语言的基本语法单位,如关键词、标识符等。词法分析程序输出的"单词"常常采用二元组的方式,即单词类别和单词自身的值。
        2)语法分析阶段
        语法分析的任务是在词法分析的基础上,根据语言的语法规则将单词符号序列分解成各类语法单位,如"表达式""语句"和"程序"等。
        词法分析和语法分析本质上都是对源程序的结构进行分析。
        3)语义分析阶段
        语义分析阶段主要是审查源程序是否存在语义错误,并收集类型信息供后面的代码生成阶段使用,只有语法和语义都正确的源程序才能翻译成正确的目标代码。语义分析的一个主要工作是进行类型分析和检查。
        4)中间代码生成阶段
        中间代码是一种结构简单且含义明确的记号系统,可以有多种形式。中间代码的设计原则主要有两点:一是容易生成;二是容易被翻译成目标代码。中间代码生成阶段的工作就是根据语义分析的输出生成中间代码。
        语义分析和中间代码生成所依据的是语言的语义规则。
        5)代码优化阶段
        代码优化阶段的任务是对前阶段产生的中间代码进行变换或进行改造,目的是使生成的目标代码更为高效,即省时间和省空间。优化过程可以在中间代码生成阶段进行,也可以在目标代码生成阶段进行。
        6)目标代码生成阶段
        目标代码生成阶段的任务是把中间代码变换成特定机器上的绝对指令代码、可重定位的指令代码或汇编指令代码。这是编译的最后阶段,它的工作与具体的机器密切相关。
        7)符号表管理
        符号表管理阶段的任务是在符号表中记录源程序中各个符号的必要信息,以辅助语义的正确性检查和代码生成。符号表的建立可以始于词法分析阶段,也可以放到语法分析阶段,但符号表的使用有时会延续到目标代码的运行阶段。
        8)出错处理
        用户编写的源程序中的错误大致可分为静态错误和动态错误。动态错误也称为动态语义错误,指程序中包含的逻辑错误。静态错误是指编译阶段发现的程序错误,可分为语法错误和静态语义错误。出错处理程序的任务包括检查错误、报告出错信息、排错、恢复编译工作。
 
       解释程序的基本原理
        解释程序是一种语言处理程序,在词法、语法和语义分析方面与编译程序的工作原理基本相同,但在运行用户程序时,它直接执行源程序或源程序的内部形式(中间代码)。因此,解释程序并不产生目标程序,这是它和编译程序的主要区别。
        解释程序的结构通常可以分成两部分:第一部分是分析部分,包括通常的词法分析、语法分析和语义分析程序,经语义分析后把源程序翻译成中间代码,中间代码常采用逆波兰表示形式;第二部分是解释部分,用来对第一部分产生的中间代码进行解释执行。
   题号导航      2023年下半年 软件设计师 上午试卷 综合知识   本试卷我的完整做题情况  
1 /
2 /
3 /
4 /
5 /
6 /
7 /
8 /
9 /
10 /
11 /
12 /
13 /
14 /
15 /
 
16 /
17 /
18 /
19 /
20 /
21 /
22 /
23 /
24 /
25 /
26 /
27 /
28 /
29 /
30 /
 
31 /
32 /
33 /
34 /
35 /
36 /
37 /
38 /
39 /
40 /
41 /
42 /
43 /
44 /
45 /
 
46 /
47 /
48 /
49 /
50 /
51 /
52 /
53 /
54 /
55 /
56 /
57 /
58 /
59 /
60 /
 
61 /
62 /
63 /
64 /
65 /
66 /
67 /
68 /
69 /
70 /
71 /
72 /
73 /
74 /
75 /
 
第40题    在手机中做本题
    在线人数   共计 13635人 在线 
    yanliangpo..     lck2748@si..     fjaz.sh@16..     hongye12@2..     FN-WWM888@..     xueyusongq..
    783505959@..     jiadajst-1..     chxroma@16..     sueua@qq.c..     junhong044..     lishunbook..
    syd333@163..     tctmikeche..     truelvoe19..     liangyinke..     happy88888..     kuppa@126...
    569777753@..     zuiyu1986@..     JIHN1985@1..     630901590@..     happy_yqb@..     fjyangmei@..
    langlaile5..     xiaoqing7@..     zhuyucheng..     keyzhong@y..     lc811002@1..     victor380@..
    xch808@163..     68yu@163.c..     csmcsm8866..     waiting_ou..     fengyunk83..     XIAMENLIUL..
    zhmyq2008@..     lihairen.2..     dyyangbo@1..     yanmin158@..     hulilixiao..     tjjily@163..

本网站所有产品设计(包括造型,颜色,图案,观感,文字,产品,内容),功能及其展示形式,均已受版权或产权保护。
任何公司及个人不得以任何方式复制部分或全部,违者将依法追究责任,特此声明。
本站部分内容来自互联网或由会员上传,版权归原作者所有。如有问题,请及时联系我们。



京B2-20210865 | 京ICP备2020040059号-5 |京公网安备 11010502032051号 | 营业执照 | Copyright ©2000-2025 All Rights Reserved 软考在线版权所有