编译原理

您所在的位置:网站首页 汇编运算符优先级排序是什么 编译原理

编译原理

2024-07-06 20:10:58| 来源: 网络整理| 查看: 265

概述

       算符优先分析法(Operator Precedence Parse)是仿效四则运算的计算过程而构造的一种语法分析方法。算符优先分析法的关键是比较两个相继出现的终结符的优先级而决定应采取的动作。

       优点:简单,有效,适合表达式的分析。

       缺点:只适合于算符优先文法,是一个不大的文法类。

名词解释

定义:

    短语:设有文法G,S是开始符号,设abd是G的一个句型,若有SÞabd且AÞb则称b是句型abd关于A的短语。

    直接短语:在上面定义中,如果A直接推出b,即AÞb,则称b是句型abd关于A®b的直接短语。

    句柄:一个句型的最左直接短语称为句柄。

    素短语:文法G某句型的一个短语是素短语,当且仅当它至少含有一个终结符,且除它自身之外不再含更小的素短语。

    最左素短语:在具有多个素短语的句型中处于最左边的那个素短语。

求法:

    短语:从根结点出发一层一层地找出所有非叶子结点的非终结符,每一个非终结符延伸下去的所有叶子结点从左到右排列起来就是一个短语。

    直接短语:找出所有仅有两代的子树,并将它的所有叶子从左到右排列起来就是一个直接短语。

    句柄:从直接短语集合中找出最左边的短语。

    素短语:从短语集合中找出所有含有终结符的短语,然后选出除它自身之外不再含更小的素短语(这个小的概念是集合中没有被包含的元素,如有两个短语aAA和aAAA,aAA含于aAAA,所以aAA比aAAA小)

    最左素短语:从素短语集合中找出最左边的素短语。

FIRSTVT集和LASTVT集

FIRSTVT集

定义:FIRSTVT(P)={a|P=>a…,或P=>Qa…,a属于VT,Q 属于VN}

求法:

    若P→a…或P→Qa…, 则a属于FIRSTVT(P);

    若P→Q…, 则FIRSTVT(Q)含于FIRSTVT(P);

    直至FIRSTVT(P)不再增大。

LASTVT集

定义:LASTVT(P)={a|P=>...a,或P=>…aQ,a含于VT,Q 含于VN}

求法:

    若P→...a或P→…aQ, 则a属于LASTVT(P);

    若P→...Q, 则LASTVT(Q)含于LASTVT(P);

    直至LASTVT(P)不再增大。

 

构造算符优先关系表

以以下文法为例:

        E→E+T|T

        T→T*F|F

        F→(E)|i

 

终结符之间的优先关系

对算符文法G,  a,b属于VT 定义

(1)a=b:  G中有P→. . .ab. . .或P→. . .aQb. . .

(2)ab…或Q=>Rb...

(3)a>b:  G中有P→. . .Qb. . . 且Q=>. ..a或Q=>…aR

 

算符优先关系表的构造

(1)  在文法中添加E→#E#。

(2)  求出FIRSTVT和LASTVT集

(3)  找出所有终结符,并画出关系表的结构

(4)  从文法中找出形为aQb(终结符+非终结符+终结符)和ab(终结符+终结符)的部分,本例中为(E)和#E#,然后在(和)与#和#相应的表格填=。

(5)  从文法中找出形为aQ(终结符+非终结符)的部分,a与Q的FIRSTVT集合中每一个元素在表格中的交叉点填小于号。

    i.找出形为aQ的部分

    

    ii.填小于号(终结符为竖排,非终结符中的元素为横排,以横排为基准填符号)

    

(6)  从文法中找出形为Qa(非终结符+终结符)的部分, Q的LASTVT集合中每一个元素与a在表格中的交叉点填大于号。    i.找出形如Qa的部分    

    ii.填大于号(非终结符中的元素为横排,终结符中的元素为竖排,以竖排为基准填符号)

    

(7)  合并后的结果为

    

 

    从上表可知:

    (1)相同终结符之间的优先关系未必是=

    (2)有aa

    (3)a、b之间未必一定有优先关系

    故=、不同于关系运算符“等于”、“小于”、“大于”



【本文地址】

公司简介

联系我们

今日新闻


点击排行

实验室常用的仪器、试剂和
说到实验室常用到的东西,主要就分为仪器、试剂和耗
不用再找了,全球10大实验
01、赛默飞世尔科技(热电)Thermo Fisher Scientif
三代水柜的量产巅峰T-72坦
作者:寞寒最近,西边闹腾挺大,本来小寞以为忙完这
通风柜跟实验室通风系统有
说到通风柜跟实验室通风,不少人都纠结二者到底是不
集消毒杀菌、烘干收纳为一
厨房是家里细菌较多的地方,潮湿的环境、没有完全密
实验室设备之全钢实验台如
全钢实验台是实验室家具中较为重要的家具之一,很多

推荐新闻


图片新闻

实验室药品柜的特性有哪些
实验室药品柜是实验室家具的重要组成部分之一,主要
小学科学实验中有哪些教学
计算机 计算器 一般 打孔器 打气筒 仪器车 显微镜
实验室各种仪器原理动图讲
1.紫外分光光谱UV分析原理:吸收紫外光能量,引起分
高中化学常见仪器及实验装
1、可加热仪器:2、计量仪器:(1)仪器A的名称:量
微生物操作主要设备和器具
今天盘点一下微生物操作主要设备和器具,别嫌我啰嗦
浅谈通风柜使用基本常识
 众所周知,通风柜功能中最主要的就是排气功能。在

专题文章

    CopyRight 2018-2019 实验室设备网 版权所有 win10的实时保护怎么永久关闭