- 博客(6)
- 收藏
- 关注
原创 编译原理学习总结
一,什么叫编译程序?编译器就是一个程序,它读入用某种语言编写的源程序,并翻译成一个与之等价的另一种语言编写的源程序。编译程序的工作,从输入源程序开始,到输出目标程序结束,与自然语言之间的翻译有很多相似之处:一段英文翻译成中文,需经下列步骤:I am a hard-working student.识别出句子中的单词->词法分析分析句子的语法结构->语法分析根据句子的含义进行初步...
2018-06-12 11:21:41 2098
原创 第六章属性文法和语法制导翻译 第七章语义分析和中间代码产生
这章介绍语义分析及翻译的问题。一,属性文法属性文法是在上下文无关文法的基础上为每个文法符号(终结符或非终结符)配备若干个相关的“值”(称为属性)。属性:代表与文法符号相关的信息,和变量一样,可以进行计算和传递。例:类型、值、代码序列、符号表内容等属性计算的过程即是语义处理的过程,对于文法的每一个产生式配备一组属性的计算规则,则称为语义规则。1,属性分为综合属性和继承属性。综合属性:用于“自下而上...
2018-06-10 20:10:40 6150
原创 编译原理第五章语法分析—自上而下分析
自下而上分析法就是从输入串开始,逐步进行规约,直到文法的开始符号。一,基本思想1,规约用一个寄存符号的先进后出栈,把输入符号一个一个地移进到栈里,当栈顶形成某个产生式的候选式时,即把栈顶的这一部分替换成(归约为)该产生式的左部符号。如:设文法G: S -> aAcBe A -> b A -> Ab B -> d 怎样把输入串a...
2018-05-16 20:28:27 10048 2
原创 编译原理第四章—语法分析(自上而下分析)
对于一个文法,当给你一串终结符号时,怎样知道它是不是该文法的一个句子呢?在自上而下的语法分析里,就是要判断能否从文法的开始符号推导出这个输入串。语法分析这一部分在编译过程中承前启后,是核心部分。 自上而下分析就是对输入串通过试探,反复使用不同产生式谋求匹配输入串,为的是从文法开始符号(根节点)出发,自上而下的为输入串建立一棵语法树,即为输入串寻找一个最左推导。 在这种推导过程中,因为反...
2018-04-22 21:00:40 1490
原创 编译原理第三章总结
就像单词是我们理解文章的基本单位,编译程序是在单词的级别上分析源程序的。词法分析就是从左至右逐个字符扫描源程序,把字符变成单词,把字符串变成单词符号串。 执行词法分析的程序叫词法分析器。向它输入源程序,就能输出单词符号。这些单词符号包括关键字、标识符、常数、运算符和界符。输出时表示成这种形式:(单词种别,单词符号的属性值)。其中单词符号的属性值是对同一种别下单词符号的再次划分。 词...
2018-04-06 08:24:59 3994
原创 编译原理第二章总结
第二章 高级语言及语法描述2.1程序语言的定义 程序语言主要由语法和语义两个方面定义。2.1.1 语法三个基本概念:1,字母表:一个有限的字符集,包括大小写英文字母、数字 、特殊字符; 任何语言:一定字符集(字母表)上的字符串(有限序列)2,单词符号:是语言中具有独立意义的最基本结构 一般包括:常数,标识符,基本字、算符和界符3,语法单位:由单词符号构成的更大的结构 一般包括: 表达式、...
2018-03-24 10:40:11 702
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人