网页设计第4章解析.ppt

  1. 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
  2. 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  3. 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
网页设计第4章解析

第四章 词法分析 词法分析程序的设计 单词的扫描工具 有穷自动机 正规式和有穷自动机的等价性 正规文法和有穷自动机间的转换 §4.1 词法分析程序的设计 实现词法分析(lexical analysis)的程序 逐个读入源程序字符并按照构词规则切分成一系列单词。 单词是语言中具有独立意义的最小单位:包括保留字、标识符、运算符、标点符号和常量等 词法分析程序的输出 单词符号分为5种: 1.?标识符 2.?常数 3.?基本字(关键字) 4.? 运算符 5.? 界符 例:if i=5 then x:=y; 保留字if (3,’if’) 标识符i (1,指向i符号表的入口) 等号= (4,‘=’) 常数5 (2,‘5’) 保留字then (3,’then’) 标识符x (1,指向x符号表的入口) 赋值号:= (4,‘:=’) 标识符y (1,指向y的符号表的入口) 分号; (5,;) 词法分析程序作为一个独立阶段 词法分析必须作为独立的一遍吗? 当然可以把词法分析安排成独立的一遍,让它把整个源程序翻译成一连串的单词符号(二元式)的形式存放于中间文件中 。 将词法分析程序安排成一个子程序,每当语法分析器需要一个单词符号时就调用这个子程序。 §4.2 单词的描述工具 正规文法(regular grammar): G=(VN,VT,S,P),其中p中的每一个规则都满足: A aB或A a,其中 正规式(regular expression) 正则表达式,正规表达式. 是说明单词的模式(pattern)的一种重要的表示法(记号),是定义正规集的数学工具。 正规式和它所表示的正规集的递归定义 设字母表为?,辅助字母表?`={?,?,?,?,?,?,?} ?和?都是?上的正规式,它们所表示的正规集分别为{?}和{ }; 任何a??,a是?上的一个正规式,它所表示的正规 集为{a}; 假定e1和e2都是?上的正规式,它们所表示的正规集分别为L(e1)和L(e2),那么,(e1), e1?e2, e1?e2, e1?也都是正规式,它们所表示的正规集分别为L(e1), L(e1)?L(e2), L(e1)L(e2)和(L(e1))?。 仅由有限次使用上述三步骤而定义的表达式才是?上的正规式,仅由这些正规式所表示的集合才是?上的正规集。 例: 令?={a,b}, ?上的正规式和相应的正规集的例子有: 正规式 正规集 a {a} a?b {a,b} ab {ab} (a?b)(a?b) {aa,ab,ba,bb} a ? {? ,a,a, ……任意个a的串} 正规式 正规集 (a?b)? {? ,a,b,aa,ab ……所有由a和b组成的串} (a?b)?(aa?bb)(a?b)? {??上所有含有两个相继的a或两个相 的b组成的串} 例 令?={l,d},则?上的正规式 r=l(l ?d) ?其中l代表字母,d代表数字, 正规式的等价 若两个正规式e1和e2所表示的正规集相同,则说e1和e2等价,写作e1=e2。 例如: e1= (a?b), e2 = b?a e1= b(ab)? , e2 =(ba)?b 正规式服从的代数规律 设r,s,t是正规式 r?s=s?r “或”服从交换律 r?(s?t)=(r?s)?t “或”的可结合律 (rs)t=r(st) “连接”的可结合律 r(s?t)=rs?rt (s?t)r=sr?tr 分配律 ?r=r, r?=r ?是“连接”的恒等元素 零一律 r?r=r r?=??r?rr?… “或”的抽取律 正规式到正规文法 对?上的正规式r ,存在一个RG=(VN,VT,P,S): L(G)=L(r)。 初始: VT= ?, S ? VN

文档评论(0)

wbjsn + 关注
实名认证
内容提供者

该用户很懒,什么也没介绍

1亿VIP精品文档

相关文档