- 1、有哪些信誉好的足球投注网站(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
- 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
第4章 词法分析;本章重点;4.1 词法分析程序的设计;=;While i<>j do if i>j then i:=i-j else j:=j-i ?while ?, ? i ?, ?<> ?, ?j ?, ? do ?, ?if ?, ?i ?, ?> ?, ?j ? , ?then ?, i , := ? , i, - , j , else, j , := , j , - , i ;程序语言单词的分类: 1.关键字(保留字或基本字):begin, end 2.标识符:用来表示各种名字 3.字面常数:256,3 .14,true, ?abc? 4. 运算符:如,+、-、*、/ 等等 5.分界符:如逗号,分号,冒号等;词法分析器的输出: (词类编码,单词自身的属性值) * 词类编码提供给语法分析程序使用; * 单词自身的属性值提供给语义分析程序使用。 具体的分类设计以方便语法分析程序使用为原则。 关键字可分???一类,也可以一个关键字分成一类。 常数可统归一类,也可按类型( 整型、实型、布尔型等),每个类型的常数划分成一类。 单词自身的属性值提供的内容,是由词法分析和语义分析的任务划分决定的。;例如:图3.1的源程序经词法分析器的输出 〈while,—— 〉 〈id,指向i的符号表入口的指针〉 〈relop , NE 〉 〈id,指向j的符号表入口的指针〉 〈do,—— 〉 〈if,——〉 〈id,指向i的符号表入口的指针〉 ???? 〈id,指向j的符号表入口的指针〉;3 把词法分析设计成一个独立程序 (1)组织成一遍扫描;(2)作为语法分析和语义分析的子程序;(1)词法分析程序的主要任务 扫描源程序,产生单词符号 (2)词法分析程序的其他任务 滤掉空格,跳过注释、换行符 追踪换行标志,复制出错源程序, 宏展开,…… (3)就词法分析工作从语法分析工作独立出来的原因 简化设计 改进编译效率 增加编译系统的可移植性 ;实例 PL/0编译程序的结构图;实例 PL/0编译程序的结构图; 4 扫描器的接口设计;(2)词法分析程序作为语法分析程序的子程序 有些编译程序将词法分析和语法分析安排在同一遍中,此时词法分析作为语法分析程序的一个子程序。每当语法分析需要一个新的单词符号时,就调用词法分析子程序,词法分析子程序从字符串源程序中识别出一个具有独立意义的单词,将其单词符号返给语法分析。;扫描器主要操作;;4.2.1 正规文法;4.2.2 正规表达式与正规集;正规式也称正则表达式。正规表达式(regular expression)是说明单词的模式(pattern)的一种重要的表示法(记号),是定义正规集的数学工具。我们用以描述单词符号。 下面是正规式和它所表示的正规集的递归定义。;定义(正规式和它所表示的正规集): 设字母表为?,辅助字母表?`={?,?,?,?,?,?,?}。 1。 ?和?都是?上的正规式,它们所表示的正规集分别为{?}和{ }; 2。任何a? ?,a是?上的一个正规式,它所表示的正规集为{a}; ;3。假定e1和e2都是?上的正规式,它们所表示的正规集分别为L(e1)和L(e2),那么,(e1), e1? e2, e1?e2, e1?也都是正规式,它们所表示的正规集分别为L(e1), L(e1)?L(e2), L(e1)L(e2)和(L(e1))?。 4。仅由有限次使用上述三步骤而定义的表达式才是?上的正规式,仅由这些正规式所表示的集合才是?上的正规集。;正规式中的符号;设?={a, b}, ?上的正规式和相应的正规集的例子有: 解: 正规式 正规集 a {a} a|b {a,b} ab {ab} a* {? ,a,aa,…} (a|b)(a|b) {aa,ab,ba,bb} (a|b)* {a,b}上的任意串 (a|b)*(aa|bbb)(a|b)* ?*上所有含有两个相继的a
有哪些信誉好的足球投注网站
文档评论(0)