课程
1204 字
约 4 分钟
大三下
学堂在线测试 —— 编译原理
编译原理exercises/xuetangx_2026·更新于 2026-09-15
学堂在线测试 —— 编译原理
语义分析和中间代码产生 习题
一、 单项选择题(本题共 11 小题,每小题 1 分,共 11 分)
1. 中间代码生成所依据的是语言的 ( )。
- A. 词法规则
- B. 语法规则
- C. 语义规则
- D. 产生规则
2. 下面哪些属于程序语言的语义定义?( )
- A. 表达式中圆括号必须匹配
- B. 类的声明必须以
class开头 - C. 关于函数调用时参数传递方法的描述
- D. 函数体必须用
return语句结尾
3. (a+b)/(c-d) 对应的逆波兰式(后缀式)是 ( )。
- A.
abcd-/+ - B.
ab+cd-/ - C.
abcd+/- - D.
ab+cd/-
4. 下列 、 中间代码形式有益于优化处理。
- A. 四元式、间接三元式
- B. 三元式、间接三元式
- C. 二元式、间接三元式
- D. 四元式、三元式
5. 目标代码的高效性体现在 ( )
- A. 运行时间较短
- B. 占用存储空间较小
- C. 运行时间短但占用内存空间大
- D. 运行时间短且占用存储空间小
6. 经过编译以后得到的目标代码是 ( )
- A. 四元式序列
- B. 间接三元式序列
- C. 三元式序列
- D. 机器语言程序或者汇编语言程序
7. 中间代码生成时所遵循的是 ( )
- A. 语法规则
- B. 词法规则
- C. 语义规则
- D. 等价变换规则
8. 中间代码的表示形式不包括 ( )
- A. 三元式
- B. 四元式
- C. 抽象语法树
- D. 正规式
9. 下列哪种不是常见的目标代码形式 ( )
- A. 汇编语言代码
- B. 机器语言代码
- C. 四元式
- D. 可重定位二进制代码
10. 以下不属于中间代码形式的是 ______。
- A. 后缀式
- B. DFA
- C. 三地址代码
- D. 抽象语法树
11. 下列各项不可能是目标代码的是 ( )
- A. 汇编指令代码
- B. 可重定位指令代码
- C. 绝对指令代码
- D. 三地址代码
二、 填空题(本题共 2 小题,每小题 1 分,共 2 分)
1. 语义分析和中间代码生成阶段,用 ______ 描述语义规则。
2. 表达式 的后缀式形式是 ______。
三、 主观题(本题共 1 小题,每小题 10 分,共 10 分)
1. 把程序段:
while a < b do
if c < d then
x := y + z;
翻译成四元式代码,假设语句标号从 100 开始。













