- 1、本文档共75页,可阅读全部内容。
- 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
- 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
;
?词法分析概要
?正则表达式
?有限状态自动机
?从NFA到DFA的转换
?状态最小化算法;;;
?词法单元(Token):
O包含单元名(Token-name)和可选的属性值(attribute-value)
O单元名是表示某种词法单位抽象符号。语法分析器通过单元名即可确定词法单元序列的结构。;
词法单元示例;
?一个模式匹配多个词素时,必须通过属性来传递附加的信息。属性值将被用于语义分析、代码生成等阶段。
?不同的目的需要不同的属性。因此,属性值通常是一个结构化数据。
?词法单元id的属性
O词素、类型、第一次出现的位置、…;
词法单元示例(名和属性值);;
?词法分析概要
?正则表达式
?有限状态自动机
?从NFA到DFA的转换
?状态最小化算法;
?字母表:一个有限的符号集合
O二进制{0,1}
OASCII
OUnicode
O典型的字母表包括字母、数位和标点符号
?串:字母表中符号组成的一个有穷序列
O串s的长度|s|
O空串ε,长度为0的串
?语言:给定字母表上一个任意的可数的串的集合
O语法正确的C程序的集合,英语,汉语;
?和串有关的术语(banana)
O前缀:从串的尾部删除0个或多个符号后得到的串(ban、banana、ε)
O后缀:从串的开始处删除0个或多个符号后得到的串(nana、banana、ε)
O子串:删除串的某个前缀和某个后缀得到的串(banana、nan、ε)
O真前缀、真后缀、真子串:既不等于原串,也不等于空串的前缀、后缀、子串
O子序列:从原串中删除0个或者多个符号后得到的串(baan);
?串的运算
O连接(concatenation):x和y的连接时把y附加到x的后面形成的串,记作xy。
?x=dog,y=house,xy=doghouse
O指数运算(幂运算):s0=ε,s1=s,si=si-1s;
?x=dog,x0=ε,x1=dog,x3=dogdogdog;
?语言上的运算;
L={A,B,……,Z,a,b,……,z}
D={0,1,……,9}
LUD:{A,B,……,Z,a,b,……,z,0,1,……,9}LD:520个长度为2的串的集合
L4:所有由四个字母构成的串的集合
L*:所有字母构成的集合,包括ε。L(LUD)*:
D+:;
?正则表达式
O一种描述词素模式的重要表示方法
?正则表达式可以高效、简洁地描述处理词法单元时用到的模式类型
?可以描述所有通过对某个字母表上的符号应用运算符而得到的语言。其定义的集合叫做正则集合(regularset)
?每个正则表达式r可以描述一个语言L(r),也即其定义的正则集合
?例如,C语言标识符的语言,可以用如下正则表达式来表示:letter_(letter_|digit)*;
?正则表达式可以由较小的正则表达式递归构建(字母表Σ上的正则表达式的定义)
O基本部分
?ε是一个正则表达式,L(ε)={ε}
?如果a是Σ上的一个符号,那么a是正则表达式,L(a)={a}
O归纳步骤:
?选择:(r)|(s),L((r)|(s))=L(r)UL(s);
?连接:(r)(s),L((r)(s))=L(r)L(s);
?闭包:(r)*,L((r)*)=(L(r))*;
?括号:(r),L((r))=L(r)
?运算的优先级:*连接符|(a)|((b)*(c))可以改写为a|b*c;
?Σ={a,b}
?L(a|b)={a,b}
?L((a|b)(a|b))={aa,ab,ba,bb}
?L(a*)={ε,a,aa,aaa,aaaa,……}
?L((a|b)*)={ε,a,b,aa,ab,ba,bb,aaa,aab,……}
?L(a|a
您可能关注的文档
- 安全生产智能化保障技术(第2版)课件:现代智能技术.pptx
- 安全生产智能化保障技术(第2版)课件:智能专家系统.pptx
- 安全生产智能化保障技术(第2版)绪论.pptx
- 爆破工程(第3版)课件:爆破安全要求.pptx
- 爆破工程(第3版)课件:爆炸及其爆破的基本知识.pptx
- 爆破工程(第3版)课件:爆炸器材与爆破方法.pptx
- 爆破工程(第3版)课件:地下工程掘进爆破.pptx
- 爆破工程(第3版)课件:构 (建) 筑物拆除爆破与特种爆破.pptx
- 爆破工程(第3版)课件:露天爆破技术 .pptx
- 爆破工程(第3版)课件:露天爆破技术.pptx
- 党委中心组学习发言:学习贯彻中央经济工作会议精神,开创2025年高质量发展新篇章.docx
- 党员干部2024年度民主生活会“四个带头”对照检查材料.docx
- 2025年某市市直机关全面从严治党工作要点.docx
- 某市城市管理局党组书记、局长2024年度述职述廉述学述法报告.docx
- 2024年度领导班子年度考核工作述职报告.docx
- 在2025年全市财政工作会议上的讲话提纲.docx
- 在2025年市企业家座谈会上的讲话.docx
- 市直单位2024年组织生活会个人对照检查发言材料.docx
- 市水利局党组书记、局长2024年度述职述廉述学述法报告.docx
- 乡镇党委民主生活会互相批评会议记录.docx
文档评论(0)