第8周 星期二 第2大节
- 视频:
screen_编译原理与设计_第8周_星期二_第2大节.mp4 - 字幕:
transcripts/第8周_星期二_第2大节.srt
时间轴
00:50复习:短语/直接短语/句柄(语法树视角)07:52LR分析表回顾:ACTION和GOTO12:11经典问题:站顶E是句柄但不一定规约——句柄需指定所属句型21:15总控算法回顾28:00项目集规范族直接构造法(B包+GO函数)34:51LR(0)分析表构造算法(规则1-4)38:525状态LR(0)表填写示例54:18冲突定义:移进-规约冲突、规约-规约冲突59:47SLR(1)分析:通过FOLLOW集解决冲突01:21:48SLR(1)局限性:FOLLOW集不区分规范推导01:30:20LR(1)项目引入:二元组(LR(0)项+搜索符)01:51:36LR(1)有效项目判断(找规范推导)01:57:40LR(1)项目集规范族构造(B包算搜索符)02:17:53LR(1)分析表构造规则
关键点
考勤/签到/小测
无。
作业
无布置。
考试/复习重点
- ⚠️
12:11句柄必须指定所属句型——不是任何句型的句柄都要规约 - LR(0)→SLR(1)→LR(1)递进逻辑需理清
- SLR(1):用FOLLOW集判断是否规约(
01:11:36) - SLR(1)局限:FOLLOW集可能包含不该规约的符号(
01:21:48) - LR(1)项目:[A→α·β, a],搜索符a表示规约后的下一个输入(
01:30:47) - 有效项目判断需找规范推导(
01:32:06)
其他需要回看的片段
12:37-21:09“E为什么是句柄却不规约”——经典学生疑问完整解答38:52-45:37LR(0) 5状态分析表填写54:18-59:47冲突示例(移进-规约、规约-规约)01:51:36-01:57:37LR(1)有效项目判断示例
省流
LR(0)→SLR(1)→LR(1)三种方法递进对比。LR(0)有冲突→SLR(1)用FOLLOW解决→SLR(1)有局限→LR(1)引入搜索符精确控制规约。⚠️ 句柄概念精细化理解很重要。