- 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
- 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
- 4、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
- 5、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们。
- 6、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
- 7、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
广工编译原理复习
编译原理复习
——Always麦
引论
什么是编译程序:
翻译程序:将一种语言(源语言)翻译成另一种逻辑上等价的语言(目标语言)的程序。
编译程序:源语言为高级语言,目标语言是低级语言(汇编或机器语言)的翻译程序。
与解释语言的区别:
编译程序(器) 解释程序(器) 概念:翻译整个源程序,产生一份目标代码 概念:边翻译边执行,不产生目标代码 优:执行效率较高,空间开销较小 劣:执行效率较低,空间开销大 劣:交互性差,较复杂 优:交互性好,较简单 图1.2 高级语言程序的处理过程 P1
图1.10 编译程序结构框图 P6
前端、后端的概念:
前端:与源语言有关,而与目标机无关的编译程序
后端:与目标机有关,而与源语言无关的编译程序
遍、趟的概念:是对源程序或源程序的中间结果从头到尾扫描并完成规定任务的过程
PL/0 编译程序的实现
P18 三个变量
通过三个全程量 SYM 、ID和NUM 将识别出的单词信息传递给语法分析程序。
SYM:存放单词的类别,用内部编码形式表示。
ID:存放用户所定义的标识符的值。即标识符字符串的机内表示。
NUM:存放用户定义的数。
P22 符号表 【画】
TX: table表的下标指针,是以值参数形式使用的。
DX:计算每个变量在运行栈中相对本过程基地址的偏移量,每次都会初始化为3
P29 运行栈 【画】
RA返回地址:记录调用该过程时目标程序的断点,即调用过程指令的下一条指令的地址
DL动态链:指向调用该过程前正在运行过程的数据段基地址。
SL静态链:指向定义该过程的直接外过程(或主程序)运行时最新数据段的基地址
P28 I P T 寄存器
I: 指令寄存器。存放当前正在解释的一条目标指令
P: 程序地址寄存器。指向下一条要执行的目标程序的地址
T: 栈顶寄存器。指向当前栈中最新分配的单元
B: 总是指向当前执行过程活动记录的起始地址
CX 、 CODE
CX为目标代码CODE数组的下标指针
文法和语言
文法的直观概念
语法:每个程序的构成规律。判断“句子”是否为语言的合法程序的规则。
包括:词法规则(字符组成的单词; 语法规则(单词组成语法单元
语义:每个程序的含义。赋予程序意义的规则
语用:每个程序和使用者之间的关系
符号和符号串 ((基本不考
文法和语言的形式定义
文法的定义: 文法是描述语法的形式化工具
文法G是一个四元组( VN, VT, P, S )
VN为非终结符的有穷集合 VN∩VT = Ф
VT为终结符的有穷集合
P为产生式(或规则式)有穷集合 形如 x→y
S为文法的开始符号 S∈VN ,至少要在一条产生式的左部出现
推导:【按要求推导】 ★ A→Ay 直接推导 A = Ay 间接推导
直接推导:每条产生式只能用一次
最左推导:
对于直接推导v=xAy=xuy=w,若x∈VT*,即A是v中最左非终结符,则称此直接推导为最左直接推导,记作v=w。
若推导v=w中的每个直接推导都是最左的,则称为最左推导
最右推导(规范推导):每次都扩展最右的非终结符
@最右推导的逆过程是 最左归约
@最左推导的逆过程是 最右归约
句型:从识别符号推导出来的符号串
句子:仅含有终结符的句型
语言L(G):文法描述的语言是该文法一切句子的集合
等价:若L(G1) = L(G2),则称G1和G2等价,记作G1∽G2
递归:递归规则是指在规则的左部和右部具有相同的非终结符的规则。
形如A→Ay 的规则称为左递归规则;
形如A→xA 的规则称为右递归规则;
形如A→xAy且x,yε的规则称为内递归规则,或自嵌入规则
文法的类型 【构造文法】
0型/短语结构文法: 最一般的文法,无限制
1型/上下文有关:
u→w的限制:除了u→ε,|u|≤|w| ,意为串的长度不可压缩
aAb → aQb 只有A出现在 ab 的上下文中,才允许用 Q代替A
2型/上下文无关:
u∈VN,w∈V* u → w == 用w取代非终结符u时,与上下文无关
3型/正规文法
右线性文法:形式都是A→aB和A→a,A,B∈VN a∈VT
左线性文法:形式都是A→Ba和A→a,A,B∈VN a∈VT
上下文无关文法及其语法树
语法树 【画】 推导树 4个条件 P40 。。。简单不多说
叶子结点从左至右组成的符号串对应文法中的一个句型
叶子结点:没有孩子的结点
分支:非叶子结点连同其全部孩子(直接孩子)。
子树:非叶子结点连同其全部后裔(直接孩子和间接孩子)。
简单子树:如果子树只有2层。
短语:每个子树的叶子串是相对于该子树的根的短语 :i1 i2 i3 i1*i2 i1*i2+i3
简单短语
文档评论(0)