编译原理测试复习

2-1采用自顶向下分析,文法必须( )。(3分)消除左递归 消除右递归 消除回溯 提取公共左因子2-2编译过程中,语法分析器的任务是( )。(3分)①分析单词是怎样构成的 ②分析单词串是如何构成语句和说明的 ③分析语句和说明是如何构成程序的 ④分析程序的结构②和③ ④ ②③④ ①②③④2-3常用的语法分析方法分为( )和自底而上分析方法两大类。(2分)...
摘要由CSDN通过智能技术生成

2-1

采用自顶向下分析,文法必须( )。 (3分)

  1. 消除左递归
  2. 消除右递归
  3. 消除回溯
  4. 提取公共左因子

2-2

编译过程中,语法分析器的任务是( )。 (3分) ①分析单词是怎样构成的 ②分析单词串是如何构成语句和说明的 ③分析语句和说明是如何构成程序的 ④分析程序的结构

  1. ②和③
  2. ②③④
  3. ①②③④

2-3

常用的语法分析方法分为( )和自底而上分析方法两大类。 (2分)

  1. 自顶向下语法分析
  2. 自左向右
  3. 递归分析
  4. 算符分析

2-4

语法分析程序的输出是( ) 。 (3分)

  1. 表达式
  2. 语法分析树
  3. 四元式
  4. 句子

2-5

语法分析程序的输入是 ( ) 。 (3分)

  1. 表达式
  2. 句型
  3. 程序
  4. 单词

2-6

高级语言编译程序常用的语法分析方法中,递归分析法属于( ) 分析方法? (3分)

  1. 自底而上
  2. 自左至右
  3. 自顶向下
  4. 自右至左

2-7

一个文法G,若( ) ,则称它是LL(1)文法. (3分)

  1. G中不含左递归
  2. G无二义性
  3. G中产生式不含左公因子
  4. G的LL(1)分析表不含多重定义

2-8

在自上而下的语法分析中,应从 ( )开始分析。 (3分)

  1. 句型
  2. 句子
  3. 文法开始符号
  4. 句柄

2-9

在递归子程序方法中,若文法存在左递归,则会使分析过程产生( )。 (3分)

  1. 回溯
  2. 非法调用
  3. 无限循环
  4. 有限次调用

2-10

LL(1)分析法中“1”的含义是( )。 (3分)

  1. 确定最左推导
  2. 确定句柄
  3. 在输入串中查看一个输入符号,可以确定用哪个产生式进行推导
  4. 确定是否推导

2-11

LL(1)分析法中第一个"L"的含义是( )。 (3分)

  1. 确定句柄
  2. 确定最左推导
  3. 从左向右扫描输入串
  4. 确定使用哪一个产生式进行展开

2-12

LL(1)分析法中第二个“L”的含义是 ( )。 (2分)

  1. 分析过程采用最左推导
  2. 确定句柄
  3. 确定使用哪一个产生式进行展开
  4. 确定是否推导

2-13

已知文法G[S]: 

S→ SaA| bB  
A → aB | c  
B → Bb | d 

存在直接左递归,消除左递归后的文法是( )。 (4分)

  1. S→bB S’    
    S’→aA S’     
    A→aB|c    
    B→dB’    
    B’→bB’
    
  2. S→bB S’   
    S’→aA S’|ε    
    A→aB|c    
    B →bB | d
    
  3. S→bB S’     
    S’→aA S’|ε     
    A→aB|c    
    B→dB’    
    B’→bB’|ε
    
  4. S→aA S’     
    S’→ bB S’|ε     
    A→aB|c    
    B→bB’    
    B'→dB’|ε

 2-14

已知文法G[S]:

S→ A| B   
A → aA |a   
B →bB |b

存在公共左因子,消除公共左因子后的文法是( )。 (4分)

  1. S→ A| B   
    A → aA |a   
    B→ bB’   
    B ’ →B|ε
    
  2. S→ A| B   
    A →  aA’
    A’ →A|ε   
    B →bB |b
    
  3. S→ A| B    
    A →  aA’  
    A’ →A|ε    
    B→ bB’  
    B ’ →B|ε
    
  4. S→ A| B    
    A →  aA’  
    A’ →A    
    B→ bB’   
    B ’ →B|ε

 2-15

已知文法G[M]:

M→ MaH| H   
H → b(M) |(M)|c   
  • 0
    点赞
  • 13
    收藏
    觉得还不错? 一键收藏
  • 2
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 2
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值