高级语言与编译程序概述自测题
第一章 高级语言与编译程序概述
单项选择题
1将编译程序分成若干个“遍”是为了____ 。
A. 提高程序的执行效率 B. 使程序的结构更加清晰
C. 利用有限的机器内存并提高机器的执行效率 D. 利用有限的机器内存但降低了机器的执行效率
2构造编译程序应掌握 ____ 。
A. 源程序 B. 目标语言C. 编译方法 D. 以上三项都是
编译程序绝大多数时间花在 ____ 上。
A. 出错处理 B. 词法分析 C. 目标代码生成 D. 管理表格
____不可能是目标代码。
A. 汇编指令代码 B. 可重定位指令代码C. 绝对指令代码 D. 中间代码
使用____可以定义一个程序的意义。
A. 语义规则 B. 词法规则C. 产生规则 D. 左结合规则
词法分析器的输入是____ 。
A. 单词符号 B. 源程序C. 语法单位 D. 目标程序
中间代码生成时所遵循的是____。
A. 语法规则 B. 词法规则 C. 语义规则 D. 等价变换规则
编译程序是对____。
A. 汇编程序的翻译 B. 高级语言程序的解释执行 C. 机器语言的执行 D. 高级语言的翻译
词法分析应遵循____。 A. 语义规则 B. 语法规则 C. 构词规则 D. 等价变换规则
1若源程序是高级语言编写的程序,目标程序是____,则称它为编译程序。
A. 汇编语言程序或高级语言程序 B. 高级语言程序或机器语言程序
C. 汇编语言程序或机器语言程序 D. 连接程序或运行程序 编译过程中,词法分析阶段的任务是____ 。
A.识别表达式 B. 识别语言单词 C. 识别语句 D. 识别程序
多项选择题:
1编译程序各阶段的工作都涉及到____。
A. 语法分析 B. 表格管理 C. 出错处理 D. 语义分析 E. 词法分析
如果编译程序生成的目标程序是机器代码程序,则源程序的执行分为两大阶段:____和____。
A. 编译阶段 B. 汇编阶段C. 运行阶段 D. 置初值阶段 3.编译程序工作时 , 通常有____阶段。
A词法分析 B. 语法分析 C. 中间代码生成 D. 语义检查 E. 目标代码生成 F.出错处理 G.表格管理
编译过程中所遵循的规则有____ 。
A.等价变换规则 B. 短语规则 C. 构词规则 D. 语义规则 E. 语法规则
填空题:
1解释程序和编译程序的区别在于________。
2编译过程通常可分为 5 个阶段,分别是____、语法分析、____、代码优化和目
标代码生成。
3 编译程序是指能将 ____程序翻译成 ____程序的程序。4.把语法范畴翻译成中间代码所依据的是语言的____。
5目标代码可以是____指令代码或____指令代码或绝对机器指令代码。
词法分析所遵循的是语言的____ ,而中间代码生成所遵循的是语言的____ 。
判断题:
1编译程序是一种常用的应用软件。 ( )
2C语言的编译程序可以用C语言来编写。 ( )
3编译方式与解释方式的根本区别在于是否生成目标代码。 ( )
4编译程序与具体的语言无关。 ( )
5一般而言,中间代码是一种独立于具体硬件的记号系统。( )
6编译程序与具体的机器有关。 ( )
7对编译程序而言,代码优化是不可缺少的一部分。 ( )
8对编译程序而言,中间代码生成是不可缺少的一部分。 ( )
9编译程序生成的目标程序一定是可执行的程序。 ( )?
10含有优化部分的编译程序的执行效率高。 ( )综合题
1计算机执行用高级语言编写的程序有哪些途径?它们之间的主要区别是什么?2.画出编译程序的总体结构图,简述各部分的主要功能。 3.什么叫自展?什么叫交叉编译?4.试分析编译程序是否分遍应考虑的因素及多遍扫描编译程序的优缺点。5.请画出编译程序的总框。如果你是一个编译程序的总设计师,应当考虑哪些问题?(国防何谓源程序、目标程序、翻译程序、编译程序和解释程序?它们之间可能有何种关系? 选择一种你所熟悉的程序设计语言,试列出此语言中的全部关键字,并通过上机使用该语言以判明这些关键字是否为保留字。
第一章答案:
一、答:1.B 2.D 3.D 4.D 5.A 6.B 7.C 8.D 9.C 10.C?11.B
二、答:1.BC 2AC 3.ABCDE 4.ACDE?
三、答:
1.是否生成目标程序
2.词法分析、
3.高级语言所写的源语言 等价的机器语言或汇编语言的目标
4.语义规则。
5
6.词法规则 语义规则
四、答:1.X 2.√ 3.√ 4.X 5.√ 6.X 7.X 8.X 9.X 10. X?
五、
1.计算机执行用高级语言