词法分析课件.PPTVIP

词法分析课件.PPT

此“教育”领域文档为创作者个人分享资料,不作为权威性指导和指引,仅供参考
  1. 1、本文档共41页,可阅读全部内容。
  2. 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
  3. 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  4. 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
  5. 5、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
  6. 6、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们
  7. 7、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
  8. 8、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
另一种做法 开始 1 2 0 6 1-9 3 x 0-9 ,a-f 4 0-9 ,a-f 其它 0-9 其它 5 0-7 0-7 其它 (DEC,值) (HEX,值) (OCT,值) 其它 词法分析 词法分析(Lexical Analysis) 词法的表示 词法分析器的设计与实现 主要内容 词法分析器(Lexical Analyzer, Scanner)的功能 正规表达式 有穷状态自动机FA——状态图 词法分析器的设计与实现 3.1 词法分析(扫描)器的功能 功能:输入源程序,输出(单词)符号(token)。即:把构成源程序的字符串转换成单词符号的序列 单词符号的形式 按照最小的语义单位设计 通常表示为二元组: (单词符号种别,属性值 ) 关键——找出符号的分割符 例如:axx=70.35+12+exp(2.7) 1) 单词符号的表示 常用单词符号种别——分类(P42) 各关键字(保留字、基本字),各种运算符,各种分界符——各用一个种别码标识 其它标识符——用一个种别码标识 常数——用一个种别码标识 属性(值)——单词符号的值 常数的值,标识符的名字等 保留字、运算符、分界符的属性值可以省略 单词符号编码举例 单词符号 种别编码 内部值 助记符 DIM 1 $DIM IF 2 $IF DO 3 $DO STOP 4 $STOP END 5 $END 标识符 6 内部符号串 $IDN 整数 7 标准二进制 $ INT = 8 $ASG + 9 $PLUS * 10 $STAR ** 11 $POWER , 12 $COMMA ( 13 $SLP ) 14 $SRP 例 3-1: 单词符号序列 while(pointer!=N){S=S++;pointer++;} while (WHILE, _ ) ( (SLP, _ ) pointer (IDN,符号表项指针) != (NE, _ ) N (IDN,符号表项指针) ) (SRP, _ ) { (LP, _ ) S (IDN,符号表项指针) = (EQ, _) S (IDN,符号表项指针) ++ (INC, _ ) ; (SEMI, _ ) pointer (IDN, 符号表项指针) ++ (INC, _ ) ; (SEMI, _ ) } (RP, _ ) 2)相关问题 词法分析器可以作为一个独立的子程序,也可以作为一遍独立的扫描来安排。 输入缓冲区 工作区(token) 单词开始指针 扫描指针 正拼单词 双缓冲区 并行、捻接 每次移动向前指针都需要做两次测试 2)相关问题 ?如何设计和实现扫描器 大小问题128Byte*2|1024Byte*2|4096Byte*2 forward := forward +1; if forward在缓冲区第一部分末尾 then 重装缓冲区第二部分 else if forward在缓冲区第二部分末尾 then begin 重装缓冲区第一部分; 将forward移到缓冲区第一部分开始 end forward := forward + 1; if forward!= eof then if forward在第一部分末尾 then 重装第二部分 else if forward在第二部分末尾 then begin 重装第一部分; 将forward 移到第一部分开始 end else终止词法分析 /* eof 在表示输入结束 */ 3.2 符号的描述——正规(表达)式 例:标识符的文法描述 约定:用d表示数字:0,1,2,…,9; 用l表示字母:A,B,…,Z,a,b,…,z G =({d,l}, {S,T}, P, S) S→l S→S d S→S l 左线性文法 S→l |lT T→l T|l T→dT|d 右线性文法 表示集合:{l}{l,d}* 1) 正规式:正规语言的另一种描述方法 例3-2:标识符的另一种表示 l (l|d)* | 表示"或" * 表示Kleene闭包 符号的并列表示符号连接关系 正规式 r 表示正规集,相应的正规集记为 L(r) 正规(表达)式(Regular Expression——RE) 设∑是一个字母表, ⑴ Φ是∑上的RE,L(Φ)=Φ; ⑵ ε是∑上的RE,L(ε)={ε}; ⑶

文档评论(0)

子不语 + 关注
官方认证
服务提供商

平安喜乐网络服务,专业制作各类课件,总结,范文等文档,在能力范围内尽量做到有求必应,感谢

认证主体菏泽喜乐网络科技有限公司
IP属地山东
统一社会信用代码/组织机构代码
91371726MA7HJ4DL48

1亿VIP精品文档

相关文档