下载此文档

布尔表达式的LR翻译器--中间代码为四元式.docx


文档分类:IT计算机 | 页数:约32页 举报非法文档有奖
1/32
下载提示
  • 1.该资料是网友上传的,本站提供全文预览,预览什么样,下载就什么样。
  • 2.下载该文档所得收入归上传者、原创者。
  • 3.下载的文档,不会出现我们的网址水印。
1/32 下载此文档
文档列表 文档介绍
布尔表达式的LR翻译器--中间代码为四元式
武汉理工大学《编译原理》课程设计说明书
1
学 号:
0121110680224
课 程 设 计
题 目
布尔表达式的LR翻译器

and
or
not
true
false
(
)
i
rop
#
B
T
F
0
S4
S5
S6
S7
S8
1
2
3
1
S9
R2
ACC
2
R2
S10
R2
R2
3
R4
R4
R4
R4
4
S4
S5
S6
S7
S8
11
5
R7
R7
R7
R7
武汉理工大学《编译原理》课程设计说明书
5
6
R8
R8
R8
R8
7
S4
S5
S6
S7
S8
12
2
3
8
S13
9
S4
S5
S6
S7
S8
14
3
10
S4
S5
S6
S7
S8
15
11
R5
R5
R5
R5
12
S9
S16
13
R3
S17
14
R1
S10
R1
R1
15
R3
R3
R3
R3
16
R6
R6
R6
R6
17
R9
R9
R9
R9
3总体设计及开发工具的选择

编译器设计的编译程序涉及到编译五个阶段中的三个,即词法分析器、语法分析器和中间代码生成器。编译程序的输出结果为中间代码即逆波兰式。整个编译程序分为三部分:词法分析部分、语法分析处理及逆波兰式生成部分、输出显示部分。
编译程序需要在单词级别上来分析和翻译源程序,所以首先要识别出单词,而词法分析部分的任务是:从左至右扫描源程序的字符串,按照词法规则(正则文法规则)识别出一个个正确的单词,并转换成该单词相应的二元式(种别码、属性值)交给语法分析使用。因此,词法分析是编译的基础。执行词法分析的程序称为词法分析器。
语法分析是编译程序的核心部分,其主要任务是确定语法结构,检查语法错误,报告错误的性质和位置,并进行适当的纠错工作。
语法分析中主要以二元式作为输入部分,所以输出显示部分的任务是将二元式通过LR分析表对语法分析处理过程进行控制,使逆波兰式翻译的工作有条不紊的进行,同时识别语法分析中的语法错误。
武汉理工大学《编译原理》课程设计说明书
6


词法分析是编制一个读单词的过程,从输入的源程序中,识别出各个具有独立意义的单词,即基本保留字、标识符、常数、运算符、分隔符五大类。并依次输出各个单词的内部编码及单词符号自身值。程序语言的单词符号一般分为五种:关键字(保留字/基本字)、标识符、常数、运算符、界限符。
词法分析的功能是输入源程序,输出单词符号。词法分析的单词符号常常表示成二元式(单词种别码,单词符号的属性值)。
词法分析器的设计方法有如下四个步骤:
1、写出该语言的词法规则。
2、把词法规则转换为相应的状态转换图。
3、把各转换图的初态连在一起,构成识别该语言的自动机。
4、设计扫描器;把扫描器作为语法分析的一个过程,当语法分析需要一个单词时,就调用扫描器。扫描器从初态出发,当识别一个单词后便进入终态,送出二元式

语法分析是编译程序的核心部分,其主要任务是确定语法结构,检查语法错误,报告错误的性质和位置,,常用的方法有递归子程序方法、运算符优先数法、状态矩阵法、LL(K)方法和LR(K)方法。归纳起来,大体上可分为两大类,即自顶向下分析方法和自底向上分析方法. Syntax进行语法分析。对于语法分析,这里采用LR(1)分析法,(1)分析程序,利用它进行语法分析,判断给出的符号串是否为该文法识别的句子,了解LR(K)分析方法是严格的从左向右扫描,和自底向上的语法分析

布尔表达式的LR翻译器--中间代码为四元式 来自淘豆网m.daumloan.com转载请标明出处.

非法内容举报中心
文档信息
  • 页数32
  • 收藏数0 收藏
  • 顶次数0
  • 上传人HShess
  • 文件大小3.87 MB
  • 时间2022-02-07
最近更新