编译技术典型题目总结

第一章

1.术语定义

编译程序:将高级语言编译为汇编语言的程序

源程序:源语言编写的程序

目标程序:目标语言书写的程序

编译程序的前端:主要依赖于源语言,包括是词法分析,语法分析,语义分析,中间代码生成

后端:依赖目标机而不是源语言,包括目标代码生成

遍:对源程序或者中间语言从头到尾扫描并完成任务

2.编译程序的组成

词法分析,语法分析,语义分析,中间代码生成,中间代码优化,目标代码生成,表格管理和错误处理

3.翻译程序,编译程序,解释程序

翻译程序是将一种语言编写的程序转换为另一种语言编写的程序

编译程序将高级语言编写的程序转换为低级语言编写的程序

解释程序解释执行高级语言的程序

4.哪里出错

(1)语法        (2)语义        (3)语法        (4)词法

5.编译程序的技术

自编译,交叉编译,自展,移植

第二章

PL/0语言允许嵌套定义和递归调用,编译程序如何解决储存问题

栈式动态储存管理

第三章

1.写元素

 L(G[S])={abc}

2.G[N]语言是什么

允许以0开头的非负整数

3.构造文法

G[S]: S->S+D|S-D|D         D->0|1|2|3|4|5|6|7|8|9

4.写元素

5.写文法

6.写推导和语法树

7.证明文法二义性

8.判断文法二义性

9.生成语法树

10.找短语,句柄

11.最左推导,最右推导

12.写文法

13.写文法

18.概念

字母表:非空有穷结合

串:符号的有穷序列

字:字母表中的元素

语言:句子的集合

语法:构成语言句子的各个记号的组合

语义:各种表示方法表示各个记号

第四章

1.构造DFA

(1)

(2)

  (3)

(4)

2.构造DFA

2.最小DFA

3.最小DFA

4.写正规式

第五章

1.最左推导,消除回溯,LL(1)

2.构造LL(1)

3.消除左递归

第六章

1.算符归约

2.算符归约和规范归约

区别:算符优先文法在归约过程中只考虑终结符之间的优先关系从而确定可归约串,而与 非终结符无关,只需知道把当前可归约串归约为某一个非终结符,不必知道该非终结符的名 字是什么,因此去掉了单非终结符的归约。 规范归约的可归约串是句柄,并且必须准确写出可归约串归约为哪个非终结符。

3.判断是否是OPG(算符优先)

第七章

1.判断SLR(1)文法

2.构造SLR(1)分析表

第八章

1.逆波兰式(后缀表达式)

2.改变表达式

3.求语义值

4.建立语法制导定义

5.翻译四元式

6.翻译算数表达式

第十章

1.代码优化技术

2.进行代码优化

  • 16
    点赞
  • 8
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值