编译原理——短语、简单短语、句柄
给出文法1:
下列句子1可由文法1推导得到:
接着构造句子1的语法树:
接下来给出短语、简单短语、句柄的不严谨定义:
短语:一棵树及其子树包含的所有叶节点组成的符号串,上图的短语为
id1 id1*id2 id2 三个。
简单短语:只包含叶节点的子树,其叶节点组成的符号串,上图的简单短语为
id1 id2 两个。
句柄:最左端的简单短语,上图的句柄为id1。
句柄是简单短语的子集,而简单短语是短语的子集。
接下来看句子1的语法分析的例子:
- 用F->id规约
短语:F F*id2 id2
简单短语:F id2
句柄:F - 用T->F规约
短语:T*id2 id2
简单短语:id2
句柄:id2 - 用F->id规约
短语:TF
简单短语:TF
句柄:T*F - 用T->T*F规约
短语:T
简单短语:T
句柄:T - 用E->T规约、
分析结束,句子1可由文法1推导得到。
说明:此处的文法1为非二义性文法,该文法的每个最右句型仅有一个句柄。若一个文法是二义性的,那么可能有多个句柄。
接下来给出一个更复杂的例子,参考该篇博客
- 短语:(Sd(T)db) , Sd(T)db, Sd(T), (T), S, b
- 简单短语:(T), S, b
- 句柄:S
编译原理——短语、简单短语、句柄相关推荐
- 《编译原理》求短语,直接短语,句柄,素短语,最左素短语 - 例题解析
<编译原理>求短语,直接短语,句柄,素短语,最左素短语 - 例题解析 笔记 (一)明确概念: 名称 概念 短语 定义: 若 S 为文法 G 的开始符号,αβδ 是该文法的一个句型,即 S ...
- 编译原理(简单自动词法分析器LEX)
编译原理(简单自动词法分析器LEX)源程序下载地址: http://files.cnblogs.com/files/hujunzheng/%E6%B1%87%E7%BC%96%E5%8E%9F%E7 ...
- 编译原理之:短语,直接短语,句柄
由于我的编译原理课程不讲人话,在阅读<数据结构>和CSDN相关博文之后,总结编译原理语法分析中的三个词的定义: 1.短语,所有子树的末端节点行成的字符串. 2.直接短语,所有简单子树的末端 ...
- 编译原理:素短语、短语、直接短语、句柄的基本概念
素短语的概念:它是一个递归的定义,至少含有一个终结符,并且除它自身之外不再含任何更小的素短语,所谓最左素短语就是处于句型最左边的素短语的短语.而一个算符优先文法G的任何句型的最左素短语是满足以下条件的 ...
- 编译原理实验代码c语言,编译原理实验 简单词法分析(含源代码和实验结果)
可直接运行 原创!! 附录一 实验报告样式 <编译原理>实验报告 实验2 简单词法分析 姓名 陈婷婷 学号 1009050121 班级 计科1001班 时间: 2012/4/5 地点:文波 ...
- 编译原理:简单词法分析器的设计与实现
一.实验目的: 设计.编制并调试一个简单的c语言词法分析程序,加深对词法分析原理的理解 二.实验要求: 对单词的构词规则有明确的定义: 编写的分析程序能够正确识别源程序中的单词符号: 识别出的单词以( ...
- 编译原理之简单语法分析器(c语言)
语法分析是编译过程的核心部分,其基本任务是根据语言的语法规则进行语法分析,如果不存在语法错误即给出正确的语法结果,并为语义分析和代码生成做准备. 语法分析器的两种方式 语法分析器的任务主要是确定是否可 ...
- 编译原理之 短语直接短语句柄 定义与区分
编译原理之 短语&直接短语&句柄 定义与区分 一.关于短语 二.关于直接短语 三.关于句柄 四.小练习 1.练习一 2.练习二 五.知识加强拓展 1.利用语法树寻找句型的短语.直接短语 ...
- 【编译原理】短语、直接短语、句柄、素短语、最左素短语概念辨析例题练习
概念 短语:某个句型中可以成功归约的子串(1-n个终结符) 直接短语/简单短语:可一步归约的短语(即若节点A下一步推出的均为叶子节点,则这些叶子节点构成的子串为一个直接短语) i1+i2 (√) i1 ...
- 素短语,最左素短语-编译原理
这个连接是句型,短语,简单短语,句柄的定义http://blog.csdn.net/qq78442761/article/details/53868673 下面是素短语和最左素短语的定义: 素短语,是 ...
最新文章
- IVs提取合并工具ivstools
- 云原生平台的建设怎么搞?监控系统又该如何演进?这里有答案!
- insightface mxnet训练horovod版
- go mongodb排序查询_【赵强老师】MongoDB中的索引(下)
- 【整理】ABAP 7.40新特性介绍(下)
- python多进程参考代码
- 如何掌握眼神接触技巧?
- C++程序员迈向百万年薪的最后一道坎
- py 的 第 12 天
- 知网中的硕博论文是caj格式,如何用CAJ转PDF?
- 开源单点登录系统CAS
- 人工智能原理——第一章 绪论
- 霞浦职业中专学校计算机专业,霞浦职业中专学校
- 【Hexo】记录NexT主题美化及域名配置(图示详解)
- Android 毕业设计高仿抖音(视频类App)(内附源码)
- SpringBoot 配置热部署
- c语言上机实验作业答案,C语言上机实验-答案
- 8000字解读蕉下:拿什么打破新消费亏钱魔咒?
- 视壮科技:VS-RK3399简单的I2C 功能介绍
- 不用写代码的Android 2D RPG游戏引擎