打印词法分析及语法分析.pptVIP

  1. 1、本文档共224页,可阅读全部内容。
  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文档。上传文档
查看更多
打印词法分析及语法分析

Chapter 3 Scanning(lexical analysis) 词法分析;;;;;typedef enum /* book-keeping tokens */ {ENDFILE,ERROR, /* reserved words */ IF,THEN,ELSE,END,REPEAT,UNTIL,READ,WRITE, /* multicharacter tokens */ ID,NUM, /* special symbols */ ASSIGN,EQ,LT,PLUS,MINUS,TIMES,OVER,LPAREN,RPAREN,SEMI } TokenType;;3.1.3?记号的属性 任何与记号相关的值 E = M * C ID, 符号表中 E 相关项的指针 assign_op, ID,符号表中 M 相关项的指针 mult_op, ID,符号表中 C 相关项的指针 ;;◆ The single character from the alphabet, expression a matches the character a. L(a) = {a} ◆ empty string(ε): the string contains no characters. L(ε) = {ε} ◆ {} or Φ: matches no string at all ,whose language is the empty set. L(Φ) = { } ; ● | —— Choice among alternatives 或(选择) ; ● Names for regular expression 正则表达式的名字;3. Example ;3. Example ;;;;;;;;● Example ;● Example ;例:有DFA M=({0,1,2,3},{a,b}, T,0,{3}) 其中T为:T(0,a)=1 T(0,b)=2 T(1,a)=3 T(1,b)=2 T(2,a)=1 T(2,b)=3 T(3,a)=3 T(3,b)=3;;=;=;;;;;令r2=b,则有? ;令r10= r4 r9 则最终得到NFA M: ? ;;;;;;;;;;;; 符号;;;;“分割法”:把一个DFA(不含多余状态)的状态分割成一些不相关的子集,使得任何不同的两个子集状态都是可区别的,而同一个子集中的任何状态都是等价的.;解:;1;;;;NFA确定为DFA:;;;;;;;Chapter 4 Syntax Analysis语法分析;;;;;;;;;句子 = 主语谓语; (1) 有若干语法成分同时存在时,总是从最左的语法成 分进行推导,这称之为最左推导,类似的有最右推导(一般推 导)。 (2) 从一组规则可推出不同的句子,如以上规则还可推出“大象吃象”、“大花生吃象”、“大花生吃花生”等句子,它们 在语法上都正确,但在语义上都不正确。;;L(G) = { s | exp = * s } ;● Example ;● Example ;● Example ;● Example ;● Example ;;1) 推导;(1) exp = exp op exp (2) = (exp) op exp (3) = (exp op exp) op exp (4) = (number op exp) op exp (5) = (number - exp) op exp (6) = (number - number) op exp (7) = (number - number) * exp (8) = (number - number) * number;1) 表达式3+4的分析树:;;解: 1)最左推导;例:已知简单整型算术文法 exp ? exp op exp|( exp ) | number op ? + | - | * 请画出串34-3*42 的分析树!;;● 结合性;;if-stmt; statement ? if-stmt | other if-stmt ? if ( exp ) statement | if ( exp ) statement else

文档评论(0)

jdy261842 + 关注
实名认证
文档贡献者

分享好文档!

1亿VIP精品文档

相关文档