⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 lalr(1)dfa.txt

📁 一个不算完整的编译器实现
💻 TXT
📖 第 1 页 / 共 2 页
字号:
通过term到状态52
通过unary-expression到状态53
通过unaryop到状态54
通过factor到状态55
通过call到状态59
通过constant到状态60
通过expression到状态115
通过ID到状态50
通过!到状态56
通过-到状态57
通过(到状态58
通过NUM到状态61
通过true到状态62
通过false到状态63
STATE72
return-stmt --> return ; 	|||	ID  ;  NUM  (  {  }  if  else  while  return  -  !  true  false  
STATE73
return-stmt --> return expression  . ; 	|||	ID  ;  NUM  (  {  }  if  else  while  return  -  !  true  false  
通过;到状态116
STATE74
expression --> var =  . expression 	|||	;  ]  )  ,  
通过var到状态48
通过simple-expression到状态49
通过additive-expression到状态51
通过term到状态52
通过unary-expression到状态53
通过unaryop到状态54
通过factor到状态55
通过call到状态59
通过constant到状态60
通过expression到状态117
通过ID到状态50
通过!到状态56
通过-到状态57
通过(到状态58
通过NUM到状态61
通过true到状态62
通过false到状态63
STATE75
var --> ID [  . expression ] 	|||	;  ]  )  ,  =  <=  <  >  >=  ==  !=  +  -  ||  |  *  /  %  &&  
通过var到状态48
通过simple-expression到状态49
通过additive-expression到状态51
通过term到状态52
通过unary-expression到状态53
通过unaryop到状态54
通过factor到状态55
通过call到状态59
通过constant到状态60
通过expression到状态132
通过ID到状态50
通过!到状态56
通过-到状态57
通过(到状态58
通过NUM到状态61
通过true到状态62
通过false到状态63
STATE76
call --> ID (  . args ) 	|||	;  ]  )  ,  <=  <  >  >=  ==  !=  +  -  ||  |  *  /  %  &&  
通过var到状态48
通过simple-expression到状态49
通过additive-expression到状态51
通过term到状态52
通过unary-expression到状态53
通过unaryop到状态54
通过factor到状态55
通过call到状态59
通过constant到状态60
通过arg-list到状态147
通过expression到状态149
通过args到状态150
通过ID到状态50
通过!到状态56
通过-到状态57
通过(到状态58
通过NUM到状态61
通过true到状态62
通过false到状态63
通过#到状态148
STATE77
relop --> <= 	|||	ID  NUM  (  -  !  true  false  
STATE78
relop --> < 	|||	ID  NUM  (  -  !  true  false  
STATE79
relop --> > 	|||	ID  NUM  (  -  !  true  false  
STATE80
relop --> >= 	|||	ID  NUM  (  -  !  true  false  
STATE81
relop --> == 	|||	ID  NUM  (  -  !  true  false  
STATE82
relop --> != 	|||	ID  NUM  (  -  !  true  false  
STATE83
addop --> + 	|||	ID  NUM  (  -  !  true  false  
STATE84
addop --> - 	|||	ID  NUM  (  -  !  true  false  
STATE85
addop --> || 	|||	ID  NUM  (  -  !  true  false  
STATE86
addop --> | 	|||	ID  NUM  (  -  !  true  false  
STATE87
simple-expression --> additive-expression relop  . additive-expression 	|||	;  ]  )  ,  
通过additive-expression到状态152
通过term到状态52
通过unary-expression到状态53
通过unaryop到状态54
通过factor到状态55
通过var到状态95
通过call到状态59
通过constant到状态60
通过ID到状态50
通过!到状态56
通过-到状态57
通过(到状态58
通过NUM到状态61
通过true到状态62
通过false到状态63
STATE88
additive-expression --> additive-expression addop  . term 	|||	;  ]  )  ,  <=  <  >  >=  ==  !=  +  -  ||  |  
通过term到状态164
通过unary-expression到状态53
通过unaryop到状态54
通过factor到状态55
通过var到状态95
通过call到状态59
通过constant到状态60
通过ID到状态50
通过!到状态56
通过-到状态57
通过(到状态58
通过NUM到状态61
通过true到状态62
通过false到状态63
STATE89
mulop --> * 	|||	ID  NUM  (  -  !  true  false  
STATE90
mulop --> / 	|||	ID  NUM  (  -  !  true  false  
STATE91
mulop --> % 	|||	ID  NUM  (  -  !  true  false  
STATE92
mulop --> && 	|||	ID  NUM  (  -  !  true  false  
STATE93
term --> term mulop  . unary-expression 	|||	;  ]  )  ,  <=  <  >  >=  ==  !=  +  -  ||  |  *  /  %  &&  
通过unaryop到状态54
通过factor到状态55
通过var到状态95
通过call到状态59
通过constant到状态60
通过unary-expression到状态165
通过ID到状态50
通过!到状态56
通过-到状态57
通过(到状态58
通过NUM到状态61
通过true到状态62
通过false到状态63
STATE95
factor --> var 	|||	;  ]  )  ,  <=  <  >  >=  ==  !=  +  -  ||  |  *  /  %  &&  
STATE96
unary-expression --> unaryop unary-expression 	|||	;  ]  )  ,  <=  <  >  >=  ==  !=  +  -  ||  |  *  /  %  &&  
STATE111
factor --> ( expression  . ) 	|||	;  ]  )  ,  <=  <  >  >=  ==  !=  +  -  ||  |  *  /  %  &&  
通过)到状态177
STATE114
selection-stmt --> if ( expression  . ) statement 	|||	ID  ;  NUM  (  {  }  if  else  while  return  -  !  true  false  
selection-stmt --> if ( expression  . ) statement else statement 	|||	ID  ;  NUM  (  {  }  if  else  while  return  -  !  true  false  
通过)到状态180
STATE115
iteration-stmt --> while ( expression  . ) statement 	|||	ID  ;  NUM  (  {  }  if  else  while  return  -  !  true  false  
通过)到状态181
STATE116
return-stmt --> return expression ; 	|||	ID  ;  NUM  (  {  }  if  else  while  return  -  !  true  false  
STATE117
expression --> var = expression 	|||	;  ]  )  ,  
STATE132
var --> ID [ expression  . ] 	|||	;  ]  )  ,  =  <=  <  >  >=  ==  !=  +  -  ||  |  *  /  %  &&  
通过]到状态192
STATE147
args --> arg-list 	|||	)  
arg-list --> arg-list  . , expression 	|||	)  ,  
通过,到状态203
STATE148
args --> # 	|||	)  
STATE149
arg-list --> expression 	|||	)  ,  
STATE150
call --> ID ( args  . ) 	|||	;  ]  )  ,  <=  <  >  >=  ==  !=  +  -  ||  |  *  /  %  &&  
通过)到状态204
STATE152
additive-expression --> additive-expression  . addop term 	|||	;  ]  )  ,  +  -  ||  |  
simple-expression --> additive-expression relop additive-expression 	|||	;  ]  )  ,  
通过addop到状态88
通过+到状态83
通过-到状态84
通过||到状态85
通过|到状态86
STATE164
term --> term  . mulop unary-expression 	|||	;  ]  )  ,  <=  <  >  >=  ==  !=  +  -  ||  |  *  /  %  &&  
additive-expression --> additive-expression addop term 	|||	;  ]  )  ,  <=  <  >  >=  ==  !=  +  -  ||  |  
通过mulop到状态93
通过*到状态89
通过/到状态90
通过%到状态91
通过&&到状态92
STATE165
term --> term mulop unary-expression 	|||	;  ]  )  ,  <=  <  >  >=  ==  !=  +  -  ||  |  *  /  %  &&  
STATE177
factor --> ( expression ) 	|||	;  ]  )  ,  <=  <  >  >=  ==  !=  +  -  ||  |  *  /  %  &&  
STATE180
selection-stmt --> if ( expression )  . statement 	|||	ID  ;  NUM  (  {  }  if  else  while  return  -  !  true  false  
selection-stmt --> if ( expression )  . statement else statement 	|||	ID  ;  NUM  (  {  }  if  else  while  return  -  !  true  false  
通过expression-stmt到状态38
通过compound-stmt到状态39
通过selection-stmt到状态40
通过iteration-stmt到状态41
通过return-stmt到状态42
通过expression到状态43
通过var到状态48
通过simple-expression到状态49
通过additive-expression到状态51
通过term到状态52
通过unary-expression到状态53
通过unaryop到状态54
通过factor到状态55
通过call到状态59
通过constant到状态60
通过statement到状态244
通过{到状态27
通过;到状态44
通过if到状态45
通过while到状态46
通过return到状态47
通过ID到状态50
通过!到状态56
通过-到状态57
通过(到状态58
通过NUM到状态61
通过true到状态62
通过false到状态63
STATE181
iteration-stmt --> while ( expression )  . statement 	|||	ID  ;  NUM  (  {  }  if  else  while  return  -  !  true  false  
通过expression-stmt到状态38
通过compound-stmt到状态39
通过selection-stmt到状态40
通过iteration-stmt到状态41
通过return-stmt到状态42
通过expression到状态43
通过var到状态48
通过simple-expression到状态49
通过additive-expression到状态51
通过term到状态52
通过unary-expression到状态53
通过unaryop到状态54
通过factor到状态55
通过call到状态59
通过constant到状态60
通过statement到状态245
通过{到状态27
通过;到状态44
通过if到状态45
通过while到状态46
通过return到状态47
通过ID到状态50
通过!到状态56
通过-到状态57
通过(到状态58
通过NUM到状态61
通过true到状态62
通过false到状态63
STATE192
var --> ID [ expression ] 	|||	;  ]  )  ,  =  <=  <  >  >=  ==  !=  +  -  ||  |  *  /  %  &&  
STATE203
arg-list --> arg-list ,  . expression 	|||	)  ,  
通过var到状态48
通过simple-expression到状态49
通过additive-expression到状态51
通过term到状态52
通过unary-expression到状态53
通过unaryop到状态54
通过factor到状态55
通过call到状态59
通过constant到状态60
通过expression到状态286
通过ID到状态50
通过!到状态56
通过-到状态57
通过(到状态58
通过NUM到状态61
通过true到状态62
通过false到状态63
STATE204
call --> ID ( args ) 	|||	;  ]  )  ,  <=  <  >  >=  ==  !=  +  -  ||  |  *  /  %  &&  
STATE244
selection-stmt --> if ( expression ) statement 	|||	ID  ;  NUM  (  {  }  if  else  while  return  -  !  true  false  
selection-stmt --> if ( expression ) statement  . else statement 	|||	ID  ;  NUM  (  {  }  if  else  while  return  -  !  true  false  
通过else到状态308
STATE245
iteration-stmt --> while ( expression ) statement 	|||	ID  ;  NUM  (  {  }  if  else  while  return  -  !  true  false  
STATE286
arg-list --> arg-list , expression 	|||	)  ,  
STATE308
selection-stmt --> if ( expression ) statement else  . statement 	|||	ID  ;  NUM  (  {  }  if  else  while  return  -  !  true  false  
通过expression-stmt到状态38
通过compound-stmt到状态39
通过selection-stmt到状态40
通过iteration-stmt到状态41
通过return-stmt到状态42
通过expression到状态43
通过var到状态48
通过simple-expression到状态49
通过additive-expression到状态51
通过term到状态52
通过unary-expression到状态53
通过unaryop到状态54
通过factor到状态55
通过call到状态59
通过constant到状态60
通过statement到状态339
通过{到状态27
通过;到状态44
通过if到状态45
通过while到状态46
通过return到状态47
通过ID到状态50
通过!到状态56
通过-到状态57
通过(到状态58
通过NUM到状态61
通过true到状态62
通过false到状态63
STATE339
selection-stmt --> if ( expression ) statement else statement 	|||	ID  ;  NUM  (  {  }  if  else  while  return  -  !  true  false

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -