语法分析流程
2017-04-21 14:59:27 18 举报
语法分析
作者其他创作
大纲/内容
N
开始
stack.pop()index++
stack.pop()
结束
table.get(t).get(ch)中每个元素n加到t的子节点列表中,stack.push(n)
Y
stack.push(P)
change = false?
change = true
change = false
X-Y1Y2...Yi...
first(X)=first(X)U(first(Yj)-ε)
若Yi是非终结符,所有first(Yj)含ε(ji)follow(Yi)=follow(Yi)Ufollow(X)
栈顶元素t=输入字符ch?
有下一条语法规则?
若Yi是非终结符follow(Yi)=follow(Yi)U(first(Yi+1)-ε)
first(Y1)中有ε?
)
index++错误处理
first(X)=first(X)Uε
follow(X)大小改变?
stack.pop()错误处理
first(X)大小改变?
stack.isEmpty()?
输入流下标index=0
0 条评论
下一页