编译原理 求解first集和follow集步骤(附例子)

本文介绍了编译原理中的First集和Follow集的概念,提供了求解First集和Follow集的步骤,并通过具体例子进行了详细解释。First集用于确定语法分析中的符号是否能产生空串或特定的首字符,而Follow集则用于确定符号可能接收到的后续输入。在计算过程中,使用迭代方法处理可能出现的闭环和非空推导,确保所有Follow集的正确性。
摘要由CSDN通过智能技术生成

First

定义:对于任意文法符号串α ,FIRST(α)是可从α推导得到的串的首符号的集合

          如果α-->ε,则ε也在FIRST(α)中( 即α可空)

           FIRST(α)={t|α-->tβ, t∈T}U{ε|α-->ε}

做法:首先明确FIRST集合是对推导符号后面的首符号(仅仅只是一个符号)进行判断的

步骤:

        假设 α-->tβ,求FIRST(α)

        ① 如果首符号t是终结符则直接放入first集合中

       ②如果t不是非终结符:

           i.如果t—>ε,则将ε加入FIRST(α),并且将β进行①②操作判断。

           ii.如果t不是ε,那么求first(t),并将first(t)的结果放入FIRST(α)中。

评论 4
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值