- 8
- 0
- 约1.75万字
- 约 73页
- 2016-12-16 发布于重庆
- 举报
总控程序 总控程序根据栈顶符号x和当前输入符a,查表决定分析器的动作 (1)若x=a=“#”,即STACK 栈顶符号为“#”,当前输入符号为“#”,则分析成功。 (2)若x=a≠“#” ,即栈顶符号x与当前输入符a匹配,则将x从栈顶弹出,输入串指针后移,读入下一个符号存入a,继续对下一个字符进行分析。 (3)若x为非终结符A ,则查分析表M[A,a]: 1)若M[A,a]为一产生式,则A自栈顶弹出,M[A, a]中产生式的右部符号逆序压栈; 2)若M[A,a]为A→ε ,则只将A自栈顶弹出。 3)若M[A,a]为空,则发现语法错误,调用出错处理程序进行处理。 总控程序的伪码描述 BEGIN #及S 进栈(push(‘#’);push(‘S’);); 把第一个输入符读入a; FLAG := TRUE; WHILE FLAG DO BEGIN 把STACK栈顶弹出放在X中(X=pop()); IF X∈VT THEN IF X=a THEN 将下一输入符读入a ELSE ERROR ELSE IF X = “ #” THEN IF X = a THEN FLAG := FALSE ELSE ERROR ELSE IF M[X, a]
您可能关注的文档
最近下载
- 包头市城市配电网“十二五”规划设计方案-baotou city power distribution network.docx VIP
- 体育场馆照明设计及检测标准.docx VIP
- 第九届哈佛大学-麻省理工数学竞赛代数题及解答.pdf
- FANUC刀纹调试案例.pptx
- 2025年上海市16区语文中考一模汇编 专题03文言文对比阅读(纯文言篇,模考真题22篇)含详解.docx VIP
- 合肥城市配电网“十二五”规划j.doc VIP
- 数控技术期末考试试题.pdf VIP
- 初中历史新课程标准(2025年修订版) .pdf VIP
- 《压缩机电气控制内部培训稿》.ppt VIP
- 农村订单定向免费医学生资格申报表.doc VIP
原创力文档

文档评论(0)