山东大学软件学院编译原理2023期末考题

2022-2023山东大学软件学院编译原理 乾宝回忆版

授课教师:高晓程

一、 简答题
1. 程序框图
2. 有穷自动机是什么?NFA和DFA的区别
3. 推导和规约的概念
4. 什么是语法制导定义(SDD)? L-SDD和S-SDD的区别
5. 简述划分基本块的算法

二、正规式变NFA,确定化,最小化
a ( ( b ( a ∣ b ) ∗ ) ∣ ε ) b a a\left(\left(b(a \mid b)^*\right) \mid \varepsilon\right) b a a((b(ab))ε)ba

三、给出以下文法
S → C C C → c C C → d \begin{aligned} & S \rightarrow C C \\ & C \rightarrow c C\\ & C \rightarrow d \end{aligned} SCCCcCCd

1. 证明是LL(1)文法 
2. 画出预测分析表
3. 给定符号串cdccccd,写出分析过程(分析栈)

四、给出以下文法
E → a A ∣ b B A → c A ∣ d B → c B ∣ d \begin{aligned} & E \rightarrow a A \mid b B \\ & A \rightarrow c A \mid d \\ & B \rightarrow c B \mid d \end{aligned} EaAbBAcAdBcBd

1. 证明是LR(0)文法
2. 画出分析表
3. 给定符号串accd,写出分析过程

五、简述语法制导翻译的思想

六、列举至少四种代码优化的方法,并简述他们的基本思想

  • 5
    点赞
  • 37
    收藏
    觉得还不错? 一键收藏
  • 1
    评论

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值