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

📄 y.output

📁 针对“虎书”中的tiger语言写的语法分析器 根据书中对tiger语言的描述写了72条文法
💻 OUTPUT
📖 第 1 页 / 共 5 页
字号:
	binary_operation_expr : program . EQ program  (25)
	binary_operation_expr : program . LT program  (26)
	binary_operation_expr : program . LE program  (27)
	binary_operation_expr : program . GT program  (28)
	binary_operation_expr : program . GE program  (29)
	binary_operation_expr : program . NEQ program  (30)
	binary_operation_expr : program . PLUS program  (31)
	binary_operation_expr : program . MINUS program  (32)
	binary_operation_expr : program . TIMES program  (33)
	binary_operation_expr : program . DIVIDE program  (34)
	binary_operation_expr : program DIVIDE program .  (34)

	.  reduce 34


state 84
	binary_operation_expr : program . OR program  (23)
	binary_operation_expr : program . AND program  (24)
	binary_operation_expr : program . EQ program  (25)
	binary_operation_expr : program EQ program .  (25)
	binary_operation_expr : program . LT program  (26)
	binary_operation_expr : program . LE program  (27)
	binary_operation_expr : program . GT program  (28)
	binary_operation_expr : program . GE program  (29)
	binary_operation_expr : program . NEQ program  (30)
	binary_operation_expr : program . PLUS program  (31)
	binary_operation_expr : program . MINUS program  (32)
	binary_operation_expr : program . TIMES program  (33)
	binary_operation_expr : program . DIVIDE program  (34)

	PLUS  shift 44
	MINUS  shift 45
	TIMES  shift 46
	DIVIDE  shift 47
	$end  reduce 25
	COMMA  reduce 25
	SEMICOLON  reduce 25
	RPAREN  reduce 25
	RBRACK  reduce 25
	RBRACE  reduce 25
	EQ  reduce 25
	NEQ  reduce 25
	LT  reduce 25
	LE  reduce 25
	GT  reduce 25
	GE  reduce 25
	AND  reduce 25
	OR  reduce 25
	THEN  reduce 25
	ELSE  reduce 25
	TO  reduce 25
	DO  reduce 25
	IN  reduce 25
	END  reduce 25
	FUNCTION  reduce 25
	VAR  reduce 25
	TYPE  reduce 25


state 85
	binary_operation_expr : program . OR program  (23)
	binary_operation_expr : program . AND program  (24)
	binary_operation_expr : program . EQ program  (25)
	binary_operation_expr : program . LT program  (26)
	binary_operation_expr : program . LE program  (27)
	binary_operation_expr : program . GT program  (28)
	binary_operation_expr : program . GE program  (29)
	binary_operation_expr : program . NEQ program  (30)
	binary_operation_expr : program NEQ program .  (30)
	binary_operation_expr : program . PLUS program  (31)
	binary_operation_expr : program . MINUS program  (32)
	binary_operation_expr : program . TIMES program  (33)
	binary_operation_expr : program . DIVIDE program  (34)

	PLUS  shift 44
	MINUS  shift 45
	TIMES  shift 46
	DIVIDE  shift 47
	$end  reduce 30
	COMMA  reduce 30
	SEMICOLON  reduce 30
	RPAREN  reduce 30
	RBRACK  reduce 30
	RBRACE  reduce 30
	EQ  reduce 30
	NEQ  reduce 30
	LT  reduce 30
	LE  reduce 30
	GT  reduce 30
	GE  reduce 30
	AND  reduce 30
	OR  reduce 30
	THEN  reduce 30
	ELSE  reduce 30
	TO  reduce 30
	DO  reduce 30
	IN  reduce 30
	END  reduce 30
	FUNCTION  reduce 30
	VAR  reduce 30
	TYPE  reduce 30


state 86
	binary_operation_expr : program . OR program  (23)
	binary_operation_expr : program . AND program  (24)
	binary_operation_expr : program . EQ program  (25)
	binary_operation_expr : program . LT program  (26)
	binary_operation_expr : program LT program .  (26)
	binary_operation_expr : program . LE program  (27)
	binary_operation_expr : program . GT program  (28)
	binary_operation_expr : program . GE program  (29)
	binary_operation_expr : program . NEQ program  (30)
	binary_operation_expr : program . PLUS program  (31)
	binary_operation_expr : program . MINUS program  (32)
	binary_operation_expr : program . TIMES program  (33)
	binary_operation_expr : program . DIVIDE program  (34)

	PLUS  shift 44
	MINUS  shift 45
	TIMES  shift 46
	DIVIDE  shift 47
	$end  reduce 26
	COMMA  reduce 26
	SEMICOLON  reduce 26
	RPAREN  reduce 26
	RBRACK  reduce 26
	RBRACE  reduce 26
	EQ  reduce 26
	NEQ  reduce 26
	LT  reduce 26
	LE  reduce 26
	GT  reduce 26
	GE  reduce 26
	AND  reduce 26
	OR  reduce 26
	THEN  reduce 26
	ELSE  reduce 26
	TO  reduce 26
	DO  reduce 26
	IN  reduce 26
	END  reduce 26
	FUNCTION  reduce 26
	VAR  reduce 26
	TYPE  reduce 26


state 87
	binary_operation_expr : program . OR program  (23)
	binary_operation_expr : program . AND program  (24)
	binary_operation_expr : program . EQ program  (25)
	binary_operation_expr : program . LT program  (26)
	binary_operation_expr : program . LE program  (27)
	binary_operation_expr : program LE program .  (27)
	binary_operation_expr : program . GT program  (28)
	binary_operation_expr : program . GE program  (29)
	binary_operation_expr : program . NEQ program  (30)
	binary_operation_expr : program . PLUS program  (31)
	binary_operation_expr : program . MINUS program  (32)
	binary_operation_expr : program . TIMES program  (33)
	binary_operation_expr : program . DIVIDE program  (34)

	PLUS  shift 44
	MINUS  shift 45
	TIMES  shift 46
	DIVIDE  shift 47
	$end  reduce 27
	COMMA  reduce 27
	SEMICOLON  reduce 27
	RPAREN  reduce 27
	RBRACK  reduce 27
	RBRACE  reduce 27
	EQ  reduce 27
	NEQ  reduce 27
	LT  reduce 27
	LE  reduce 27
	GT  reduce 27
	GE  reduce 27
	AND  reduce 27
	OR  reduce 27
	THEN  reduce 27
	ELSE  reduce 27
	TO  reduce 27
	DO  reduce 27
	IN  reduce 27
	END  reduce 27
	FUNCTION  reduce 27
	VAR  reduce 27
	TYPE  reduce 27


state 88
	binary_operation_expr : program . OR program  (23)
	binary_operation_expr : program . AND program  (24)
	binary_operation_expr : program . EQ program  (25)
	binary_operation_expr : program . LT program  (26)
	binary_operation_expr : program . LE program  (27)
	binary_operation_expr : program . GT program  (28)
	binary_operation_expr : program GT program .  (28)
	binary_operation_expr : program . GE program  (29)
	binary_operation_expr : program . NEQ program  (30)
	binary_operation_expr : program . PLUS program  (31)
	binary_operation_expr : program . MINUS program  (32)
	binary_operation_expr : program . TIMES program  (33)
	binary_operation_expr : program . DIVIDE program  (34)

	PLUS  shift 44
	MINUS  shift 45
	TIMES  shift 46
	DIVIDE  shift 47
	$end  reduce 28
	COMMA  reduce 28
	SEMICOLON  reduce 28
	RPAREN  reduce 28
	RBRACK  reduce 28
	RBRACE  reduce 28
	EQ  reduce 28
	NEQ  reduce 28
	LT  reduce 28
	LE  reduce 28
	GT  reduce 28
	GE  reduce 28
	AND  reduce 28
	OR  reduce 28
	THEN  reduce 28
	ELSE  reduce 28
	TO  reduce 28
	DO  reduce 28
	IN  reduce 28
	END  reduce 28
	FUNCTION  reduce 28
	VAR  reduce 28
	TYPE  reduce 28


state 89
	binary_operation_expr : program . OR program  (23)
	binary_operation_expr : program . AND program  (24)
	binary_operation_expr : program . EQ program  (25)
	binary_operation_expr : program . LT program  (26)
	binary_operation_expr : program . LE program  (27)
	binary_operation_expr : program . GT program  (28)
	binary_operation_expr : program . GE program  (29)
	binary_operation_expr : program GE program .  (29)
	binary_operation_expr : program . NEQ program  (30)
	binary_operation_expr : program . PLUS program  (31)
	binary_operation_expr : program . MINUS program  (32)
	binary_operation_expr : program . TIMES program  (33)
	binary_operation_expr : program . DIVIDE program  (34)

	PLUS  shift 44
	MINUS  shift 45
	TIMES  shift 46
	DIVIDE  shift 47
	$end  reduce 29
	COMMA  reduce 29
	SEMICOLON  reduce 29
	RPAREN  reduce 29
	RBRACK  reduce 29
	RBRACE  reduce 29
	EQ  reduce 29
	NEQ  reduce 29
	LT  reduce 29
	LE  reduce 29
	GT  reduce 29
	GE  reduce 29
	AND  reduce 29
	OR  reduce 29
	THEN  reduce 29
	ELSE  reduce 29
	TO  reduce 29
	DO  reduce 29
	IN  reduce 29
	END  reduce 29
	FUNCTION  reduce 29
	VAR  reduce 29
	TYPE  reduce 29


state 90
	binary_operation_expr : program . OR program  (23)
	binary_operation_expr : program . AND program  (24)
	binary_operation_expr : program AND program .  (24)
	binary_operation_expr : program . EQ program  (25)
	binary_operation_expr : program . LT program  (26)
	binary_operation_expr : program . LE program  (27)
	binary_operation_expr : program . GT program  (28)
	binary_operation_expr : program . GE program  (29)
	binary_operation_expr : program . NEQ program  (30)
	binary_operation_expr : program . PLUS program  (31)
	binary_operation_expr : program . MINUS program  (32)
	binary_operation_expr : program . TIMES program  (33)
	binary_operation_expr : program . DIVIDE program  (34)

	PLUS  shift 44
	MINUS  shift 45
	TIMES  shift 46
	DIVIDE  shift 47
	EQ  shift 48
	NEQ  shift 49
	LT  shift 50
	LE  shift 51
	GT  shift 52
	GE  shift 53
	$end  reduce 24
	COMMA  reduce 24
	SEMICOLON  reduce 24
	RPAREN  reduce 24
	RBRACK  reduce 24
	RBRACE  reduce 24
	AND  reduce 24
	OR  reduce 24
	THEN  reduce 24
	ELSE  reduce 24
	TO  reduce 24
	DO  reduce 24
	IN  reduce 24
	END  reduce 24
	FUNCTION  reduce 24
	VAR  reduce 24
	TYPE  reduce 24


state 91
	binary_operation_expr : program . OR program  (23)
	binary_operation_expr : program OR program .  (23)
	binary_operation_expr : program . AND program  (24)
	binary_operation_expr : program . EQ program  (25)
	binary_operation_expr : program . LT program  (26)
	binary_operation_expr : program . LE program  (27)
	binary_operation_expr : program . GT program  (28)
	binary_operation_expr : program . GE program  (29)
	binary_operation_expr : program . NEQ program  (30)
	binary_operation_expr : program . PLUS program  (31)
	binary_operation_expr : program . MINUS program  (32)
	binary_operation_expr : program . TIMES program  (33)
	binary_operation_expr : program . DIVIDE program  (34)

	PLUS  shift 44
	MINUS  shift 45
	TIMES  shift 46
	DIVIDE  shift 47
	EQ  shift 48
	NEQ  shift 49
	LT  shift 50
	LE  shift 51
	GT  shift 52
	GE  shift 53
	AND  shift 54
	$end  reduce 23
	COMMA  reduce 23
	SEMICOLON  reduce 23
	RPAREN  reduce 23
	RBRACK  reduce 23
	RBRACE  reduce 23
	OR  reduce 23
	THEN  reduce 23
	ELSE  reduce 23
	TO  reduce 23
	DO  reduce 23
	IN  reduce 23
	END  reduce 23
	FUNCTION  reduce 23
	VAR  reduce 23
	TYPE  reduce 23


state 92
	lvalue : lvalue LBRACK program . RBRACK  (22)
	binary_operation_expr : program . OR program  (23)
	binary_operation_expr : program . AND program  (24)
	binary_operation_expr : program . EQ program  (25)
	binary_operation_expr : program . LT program  (26)
	binary_operation_expr : program . LE program  (27)
	binary_operation_expr : program . GT program  (28)
	binary_operation_expr : program . GE program  (29)
	binary_operation_expr : program . NEQ program  (30)
	binary_operation_expr : program . PLUS program  (31)
	binary_operation_expr : program . MINUS program  (32)
	binary_operation_expr : program . TIMES program  (33)
	binary_operation_expr : program . DIVIDE program  (34)

	RBRACK  shift 110
	PLUS  shift 44
	MINUS  shift 45
	TIMES  shift 46
	DIVIDE  shift 47
	EQ  shift 48
	NEQ  shift 49
	LT  shift 50
	LE  shift 51
	GT  shift 52
	GE  shift 53
	AND  shift 54
	OR  shift 55
	.  error


state 93
	lvalue : lvalue DOT ID .  (21)

	.  reduce 21


94: shift/reduce conflict (shift 44, reduce 36) on PLUS
94: shift/reduce conflict (shift 45, reduce 36) on MINUS
94: shift/reduce conflict (shift 46, reduce 36) on TIMES
94: shift/reduce conflict (shift 47, reduce 36) on DIVIDE
94: shift/reduce conflict (shift 48, reduce 36) on EQ
94: shift/reduce conflict (shift 49, reduce 36) on NEQ
94: shift/reduce conflict (shift 50, reduce 36) on LT
94: shift/reduce conflict (shift 51, reduce 36) on LE
94: shift/reduce conflict (shift 52, reduce 36) on GT
94: shift/reduce conflict (shift 53, reduce 36) on GE
94: shift/reduce conflict (shift 54, reduce 36) on AND
94: shift/reduce conflict (shift 55, reduce 36) on OR
state 94
	binary_operation_expr : program . OR program  (23)
	binary_operation_expr : program . AND program  (24)
	binary_operation_expr : program . EQ program  (25)
	binary_operation_expr : program . LT program  (26)
	binary_operation_expr : program . LE program  (27)
	binary_operation_expr : program . GT program  (28)
	binary_operation_expr : program . GE program  (29)
	binary_operation_expr : program . NEQ program  (30)
	binary_operation_expr : program . PLUS program  (31)
	binary_operation_expr : program . MINUS program  (32)
	binary_operation_expr : program . TIMES program  (33)
	binary_operation_expr : program . DIVIDE program  (34)
	assign_expr : lvalue ASSIGN program .  (36)

	PLUS  shift 44
	MINUS  shift 45
	TIMES  shift 46
	DIVIDE  shift 47
	EQ  shift 48
	NEQ  shift 49
	LT  shift 50
	LE  shift 51
	GT  shift 52
	GE  shift 53
	AND  shift 54
	OR  shift 55
	$end  reduce 36
	COMMA  reduce 36
	SEMICOLON  reduce 36
	RPAREN  reduce 36
	RBRACK  reduce 36
	RBRACE  reduce 36
	THEN  reduce 36
	ELSE  reduce 36
	TO  reduce 36
	DO  reduce 36
	IN  reduce 36
	END  reduce 36
	FUNCTION  reduce 36
	VAR  reduce 36
	TYPE  reduce 36


state 95
	expr_list : program COMMA . expr_list  (41)

	error  shift 1
	ID  shift 2
	STRING  shift 3
	INT  shift 4
	LPAREN  shift 5
	MINUS  shift 6
	IF  shift 7
	WHILE  shift 8
	FOR  shift 9
	LET  shift 10
	BREAK  shift 11
	NIL  shift 12
	.  error

	program  goto 61
	lvalue  goto 14
	binary_operation_expr  goto 15
	assign_expr  goto 16
	function_expr  goto 17
	paren_expr  goto 18
	record_expr  goto 19
	case_expr  goto 20
	scope_expr  goto 21
	expr_list  goto 111


state 96
	function_expr : ID LPAREN expr_list RPAREN .  (39)

	.  reduce 39


state 97
	program : ID LBRACK program RBRACK . OF program  (11)
	lvalue : ID LBRACK program RBRACK .  (20)

	OF  shift 112
	$end  reduce 20
	COMMA  reduce 20
	SEMICOLON  reduce 20
	RPAREN  reduce 20
	LBRACK  reduce 20
	RBRACK  reduce 20
	RBRACE  reduce 20
	DOT  reduce 20
	PLUS  reduce 20
	MINUS  reduce 20
	TIMES  reduce 20
	DIVIDE  reduce 20
	EQ  reduce 20
	NEQ  reduce 20
	LT  reduce 20
	LE  reduce 20
	GT  reduce 20
	GE  reduce 20
	AND  reduce 20
	OR  reduce 20
	ASSIGN  reduce 20
	THEN  reduce 20
	ELSE  reduce 20
	TO  reduce 20
	DO  reduce 20
	IN  reduce 20
	END  reduce 20
	FUNCTION  reduce 20
	VAR  reduce 20
	TYPE  reduce 20


state 98
	fieldexpr_list : ID EQ . program  (48)
	fieldexpr_list : ID EQ . program COMMA fieldexpr_list  (49)

	error  shift 1
	ID  shift 2
	STRING  shift 3
	INT  shift 4
	LPAREN  shift 5
	MINUS  shift 6
	IF  shift 7
	WHILE  shift 8
	FOR  shift 9
	LET  shift 10
	BREAK  shift 11
	NIL  shift 12
	.  error

	program  goto 113
	lvalue  goto 14
	binary_operation_expr  goto 15
	assign_expr  goto 16
	function_expr  goto 17
	paren_expr  goto 18
	record_expr  goto 19
	case_expr  goto 20
	scope_expr  goto 21


state 99
	record_expr : ID LBRACE fieldexpr_list RBRACE .  (47)

	.  reduce 47


state 100

⌨️ 快捷键说明

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