编译原理什么是素短语

如题所述

编译原理中,素短语是至少含义一个终结符,并且自身不包含任何更小素短语的一种短语。

素短语是一种特殊的短语,它是一个递归的定义,至少含有一个终结符,并且除它自身之外不再含任何更小的素短语,所谓最左素短语就是处于句型最左边的素短语的短语。

一个算符优先文法G的任何句型的最左素短语是满足以下条件的最左子串NaNb…NcNdN(N是非终结符,a,b,c,d是终结符)。例如:句型T+T*F+id,T*F是最左素短语,id是素短语。

扩展资料:

通过语法树可以得知素短语:

1、每个句型对应一棵语法树 

2、每棵语法树的叶子结点从左到右排列构成一个句型 

3、每棵语法树的子树的叶子结点从左到右排列构成一个短语 

4、每棵语法树的简单子树(只有父子两层结点)的叶子结点从左到右排列构成一个简单(直接)短语。

5、素短语是至少包含一个终结符的短语,但它不能包含其它素短语。

参考资料来源:百度百科-素短语

温馨提示:答案为网友推荐,仅供参考
第1个回答  推荐于2017-09-07

  素短语是一种方法。

  简单来说:素短语是个短语,并且至少含有一个终结符,并且,除它自身之外不再含任何更小的素短语。

第2个回答  2011-06-25
素短语的概念:它是个短语,并且至少含有一个终结符,并且,除它自身之外不再含任何更小的素短语,所谓最左素短语就是处于句型最左边的素短语。而一个算符优先文法G的任何句型的最左素短语是满足以下条件的最左子串NaNb…NcNdN(N是非终结符,a,b,c,d是终结符)   实例:句型T+T*F+id,求出其语法树,可知,T*F是最左素短语,id也是素短语,但不是最左的。本回答被网友采纳
第3个回答  2011-06-26
太多了,大概看了下考点:

若源程序是用高级语言编写的,目标程序是 机器语言程序或汇编程序 ,则其翻译程序称为编译程序.

何谓优化?按所涉及的程序范围可分为哪几级优化?
答:优化:对程序进行各种等价变换,使得从变换后的程序出发,能产生更有效的目标代码。
三种级别:局部优化、循环优化、全局优化。

简述常用的优化技术有哪些?
答:编译程序中常用的优化技术有:
(1) 删除公共子表示式;
(2) 复写传播;
(3) 删除无用代码;
(4) 代码外提;
(5) 强度削弱;
(6) 删除归纳变量;
(7) 合并常量。

一个句型中的最左 B 称为该句型的句柄。
可选项有:
A. 短语 B. 简单短语 C. 素短语 D. 终结符号

.递归下降法不允许任一非终极符是直接 左 递归的。

简单优先方法每次归约当前句型的 句柄 ,算符优先方法每次归约当前句型的 最左素短语 ,二者都是不断移进输入符号,直到符号栈顶出现 可归约串 的尾,再向前找到 可归约串 的头,然后归约。

算符优先文法——设有一不含ε产生式的算符文法G,如果对任意两个终结符对a,b之间至多只有 、 和 三种关系中的一种成立,则称G是一个算符优先文法。

常用的中间语言种类有哪几种?
答:有逆波兰式、三地址代码、抽象语法树和DAG。
第4个回答  2011-06-26
它是个短语,并且至少含有一个终结符,并且,除它自身之外不再含任何更小的素短语
相似回答