- 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
- 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
第五章 词法分析与语法分析 第一节 词法分析 一. 词法分析的功能 1. 功能 扫描源程序的字符串,按照词法规则,识别出单词符号作为输出;对识别过程中发现的词法错误,则输出有关的错误信息。 2. 词法分析器和语法分析器的关系 (1)词法分析作为单独的一遍 (2)词法分析作为子程序 二. 单词的种类 (1)标识符:用来命名程序中出现的变量、数组、函数、过程、标号等 (2)基本字:也可称关键字或保留字, 如if、while、for、do、goto等 (3)常数:各种类型的常数, 如216、3.14159、TRUE等 (4)运算符:如+、-、*、/等 (5)界符:如;、:、/*、*/等 三.单词的编码 1. 单词的输出形式——二元式 (单词类别,单词的属性) 2. 单词类别的划分 基本字、运算符、界符:一字一码 标识符:单列一种 常数:按类型分类 四. 词法错误检查 非法字符 不合规则的常数 标识符前缀为保留字 五. 词法分析器的生成 1. 词法分析技术——超前搜索 为了判定一个单词符号的类别,必须扫描到某一地方,而该单词符号并没有这么长,这种扫描方式叫做“超前搜索”。 如:DO100I=1,10 DO100I=1.10 IF(5.EQ.M)GOTO 100 IF(5)=100 2. 状态转换图 有限的有向图 有限边上标记字符 一个初态 若干终态 例: 某语言允许 标识符、基本字、数字串、 +、-、*、**、、=、、 =、、=、:=、:、; 3. 实现方法 每个状态结对应一小段程序 分支状态——if或case语句 循环状态——while语句 终态——return语句 4.一个示意算法 全局量及过程: (1)token (2)character (3)getchar (4)getnb (5)concatenate (6)letter和digit (7)reserve (8)retract:退一字符;character置空 (9)buildlist:为标识符登记符号表 第二节 自顶向下语法分析 语法分析: 自上而下(自顶而下) 自下而上(自底而上) 自顶向下语法分析法:或从开始符号出发,找最左推导;或从根开始,构造推导树。 一. 回溯分析法 1.一个实例 S→xAy A→ab│a 输入串为xay,说明分析过程 2.存在的问题 (1)回溯——公共左因子的存在 A→??1| ??2 (2)左递归 A→Aα 或 A?Aα 二. 无回溯的递归下降分析法 1. 提取公共左因子 A→??1| ??2| ... |??n| δ 改写为:A→αB|δ B→ ?1| ?2| ... |?n 2.左递归的消除 (1)直接左递归的消除 P→Pα│β 改写为:P→?P' P'→αP'│ε 一般地 A→A?1|A?2|…|A?m|?1|?2|…|?n (?i?ε,?j不以A开头) 改写为:P→?1P’│ ?2P’│. . .│ ?nP’ P’ →?1P’│?2P’│. . .│?mP’│ε (2)间接左递归的消除 P?Pα (a)将文法G的所有非终结符按任一给定的顺序排列,设为A1,A2,…An; (b)消除可能的左递归; for i:=1 to n do begin for j:=1 to i-1 do 把一个形如Ai?Aj?的产生式改写为 Ai??1?|?2?|…|?k? 其中Aj??1|?2|…|?k是Aj的所有产生式; 消除Ai产生式的直接左递归 end (c)化简 以 S→Qc│c Q→Rb│b R→Sa│a 为例,按S,Q,R排列,或R,Q,S排列 按S、Q、R排列, 代入后 S→Qc│c Q→Rb│b R→ Rbca│bca│ca│a 消除R中的直接左递归 R→ bcaR’│caR’│aR’ R’→ bcaR’│? 文法产生的语言
您可能关注的文档
最近下载
- 高级日语(三)第08課 携帯上司 8課内容理解1.ppt VIP
- 全麻术后导尿管相关膀胱刺激征的管理.pptx VIP
- 精选洗车场租赁协议2024年通用.docx VIP
- 国家中小学智慧教育平台的应用培训(OCR).pdf VIP
- 鲁宾逊漂流记:英汉对照版-英DanielDefoe.pdf VIP
- 伤口造口护理.pptx VIP
- UFDEV_PHASE_1_5_5_项目客户化开发推进计划.xls VIP
- 2024-2025学年高一数学必修一《第一章 集合与常用逻辑用语》测试卷附答案解析.pdf VIP
- 某电厂引风机拆除安装实施方案.doc VIP
- 口语交际--有趣的动物及口语交际《有趣的动物》教案.doc VIP
文档评论(0)