×îбàÒëÔ­Àí¿Îºó´ð°¸-µÚ¶þ°æ ÏÂÔر¾ÎÄ

¾«Æ·Îĵµ

µÚÎåÕ ϰÌâ²Î¿¼´ð°¸

1¡¢(1) ¶Ô(a,(a,a)µÄ×î×óÍƵ¼Îª£ºS(a,(a,S))((S,S,S),S)

(a,(a,a))

(T)

(T,S)

(S,S)

((T),S)

((T,S),S)

((T,S,S),S)(((a,a),¡Ä,S),S)

(((T),S,S),S)

(((T,S),S,S),S)(((a,a),¡Ä,(S)),S)

(((S,S),S,S),S)(((a,a),¡Ä,(a)),S)

(((a,S),S,S),S)

(((a,a),S,S),S)

(T)

(T,S)

(S,S)

(a,S)

(a,(T))

(a,(T,S))

(a,(S,S))

¶Ô(((a,a),¡Ä,(a)),a) µÄ×î×óÍƵ¼Îª£ºS(((a,a),¡Ä,(T)),S)

(((a,a),¡Ä,(a)),a)

¶Ô((( a, a ), ?, ( a )), a )µÄ×î×óÍƵ¼Îª£ºS ? ( T ) ? ( T, S ) ? ( S, S ) ? (( T ), S ) ? (( T, S ), S )

?(( T, S, S ), S )

? (( S, S, S ), S ) ? ((( T ), S, S ), S ) ? ((( T, S ), S, S ), S ) ? ((( S, S ), S, S ), S ) ? ((( a, S ), S, S ), S ) ? ((( a, a ), S, S ), S ) ? ((( a, a ), ?, S ), S ) ? ((( a, a ), ?, ( T )), S ) ? ((( a, a ), ?, ( S )), S ) ? ((( a, a ), ?, ( a )), S ) ? ((( a, a ), ?, ( a )), a )

¶Ô((( a, a ), ?, ( a )), a )µÄ×î×óÍƵ¼Îª£ºS ? ( T ) ? ( T, S ) ? ( T, a ) ? ( S, a ) ? (( T ), a ) ? (( T, S ), a )? (( T, ( T )), a ) ? (( T, ( S )), a ) ? (( T, ( a )), a ) ? (( T, S, ( a )), a ) ? (( T, ?, ( a )), a ) ? (( S, ?, ( a )), a ) ? ((( T ), ?, ( a )), a ) ? ((( T, S ), ?, ( a )), a ) ? ((( T, a ), ?, ( a )), a ) ? ((( S, a ), ?, ( a )), a ) ? ((( a, a ), ?, ( a )), a )

(2) ¸ÄдÎÄ·¨Îª£º

0) S¡úa 1) S¡ú¡Ä 2) S¡ú( T ) 3) T¡úS N 4) N¡ú, S N 5) N¡ú¦Å

S: T: Èë¿Ú Èë¿Ú N: Èë¿Ú N

a

Y S Y £¬ Read(w) N ^ N Y N ( Y N

³ö¿Ú S Read(w) ³ö´í N T

³ö¿Ú N ) ¾«Æ·Îĵµ

¾«Æ·Îĵµ

Read(w) ³ö¿Ú (3) ·ÇÖÕ½á·û S T N ¶Ô×ó²¿ÎªNµÄ²úÉúʽ¿ÉÖª£º

SELECT(S¡úa)¡ÉSELECT(S¡ú¡Ä) ¡ÉSELECT(S¡ú( T ))= SELECT(N ¡ú, S N)¡ÉSELECT(N ¡ú¦Å) ={£¬}¡É { )}= ËùÒÔÎÄ·¨ÊÇLL(1)µÄ¡£ Ô¤²â·ÖÎö±í

FIRST¼¯ {a,¡Ä,(} {a,¡Ä,(} {,,¦Å}. FOLLOW¼¯ {#,,,)} {)}.... {)}.... S T N a ¡úa ¡úS N ¡Ä ( ¡ú(T) ¡úS N ) ¡ú¦Å , ¡ú, S N # ¡ú¡Ä ¡úS N Ò²¿ÉÓÉÔ¤²â·ÖÎö±íÖÐÎÞ¶àÖØÈë¿ÚÅж¨ÎÄ·¨ÊÇLL(1)µÄ¡£ (4) ¶ÔÊäÈë´®£¨a,a£©#µÄ·ÖÎö¹ý³ÌΪ£º

Õ»£¨STACK£© µ±Ç°ÊäÈë·û£¨CUR_CHAR£© Ê£ÓàÊäÈë·û£¨INOUT_STRING£© ËùÓòúÉúʽ£¨OPERATION£© #S #)T( #)T #)NS #)Na #)N #)NS, #)NS #)Na #)N #) # ( ( a a a , , a a ) ) # a,a)#... a,a)#... ,a)#... ,a)#... ,a)#... a)#... a)#... )#... )#... #... #... .. S¡ú(T) . T¡úSN S¡úa . N¡ú,SN . S¡úa . N¡ú¦Å ¿É¼ûÊäÈë´®£¨a,a£©#ÊÇÎÄ·¨µÄ¾ä×Ó¡£

¾«Æ·Îĵµ

¾«Æ·Îĵµ

6.(2) ²»ÊÇLL(1)ÎÄ·¨

ÒÔAµÄ²úÉúʽ´úÈëS£¬ÒÔDµÄ²úÉúʽ´úÈëBÖУ¬ÌáÈ¡×󹫹²Òò×Ó²¢É¾³ý¶àÓà²úÉúʽµÃÎÄ·¨£º S¡úBC ·ÖÎö±íΪ S B C F a BC F aB ¦Å b BC F b d BC dF # BC F ¦Å ¦Å C¡úaB|¦Å

B¡údF|F F¡úb|¦Å

½áÂÛ£º¾­¸Äд֮ºóµÄÎÄ·¨£ÇÊǣ̣̣¨£±£©ÎÄ·¨¡£ µÝ¹éϽµ·ÖÎöÆ÷ÈçͬÌâ1£¬´ÓÂÔ

6.(4)Ïû³ý×óµÝ¹éΪ£º S¡úi E F S S¡ú(E)

+ +SF

E¡úSF

- -SF F¡ú+SF

i SF i F¡ú-SF

F¡ú¦Å ( SF (E) ) ¦Å ©| ·ÖÎö±íΪ£º

½áÂÛ£º¾­¸Äд֮ºóµÄÎÄ·¨£ÇÊǣ̣̣¨£±£©ÎÄ·¨¡£ µÝ¹éϽµ·ÖÎöÆ÷ÈçͬÌâ1£¬´ÓÂÔ

7.(1)ÎÄ·¨²»´æÔÚ×óµÝ¹é

µÚÒ»Öָķ¨£ºÒÔAµÄ²úÉúʽÌæÈëB ²úÉúʽÖÐ B¡úbaBbb B¡úbC B C B¡úbb

B¡úa

B¡úa

b bC b # Ïû³ý×󹫹²Òò×Ó£º

C¡úaBbb C¡úb

a a aBbb ¸Äд֮ºóµÄÎÄ·¨µÄ·ÖÎö±í£º

¸Äд֮ºóµÄÎÄ·¨ÊÇLL(1)ÎÄ·¨

µÚ¶þÖָķ¨£ºÒÔBµÄ²úÉúʽÌæÈëA²úÉúʽÖÐ A¡úbaAbb A¡ú¦Å

A¡úbaa

A¡ú¦Å

C¡úa

Ïû³ý×󹫹²Òò×ÓºóΪ

A¡úbaC

C¡úAbb

SELECT(A¡úbaC) ¡É SELECT(A¡ú¦Å) ={ b}¡É {# ,b }¡Ù ËùÒÔ£¬¸Äд֮ºóµÄÎÄ·¨²»ÊÇLL(1)ÎÄ·¨

7.(3)µÚ1ÖÖ¸Äд£ºÓÃAµÄ²úÉúʽÓÒ²¿´úÌæSµÄ²úÉúʽÓÒ²¿µÄAµÃ£º

¾«Æ·Îĵµ

¾«Æ·Îĵµ

S¡úSBa|b B¡úab Ïû³ý×óµÝ¹éºóÎÄ·¨±äΪ£º 0) S¡úb N 1) N¡úB a N 2) N¡ú¦Å 3) B¡úa b

·ÇÖÕ½á·û S B N FIRST¼¯ {b}... {a}... {¦Å,a} FOLLOW¼¯ {#} {a} {#} SELECT(N¡úB a N)¡ÉSELECT(N¡ú¦Å) ={ a }¡É {# }= ËùÒÔÎÄ·¨ÊÇLL(1)µÄ¡£ Ô¤²â·ÖÎö±í

S B N a ¡úa b ¡úB a N b ¡úb N # ¡ú¦Å µÚ2ÖÖ¸Äд£ºÓÃSµÄ²úÉúʽÓÒ²¿´úÌæAµÄ²úÉúʽÓÒ²¿µÄSµÃ£º S¡úAa|b

A¡úAaB|bB B¡úab

Ïû³ý×óµÝ¹éºóÎÄ·¨±äΪ£º

0) S¡úA a 1) S¡úb 2) A¡úb B N 3) N¡úa B N 4) N¡ú¦Å 5) B¡úa b

·ÇÖÕ½á·û S A B N FIRST¼¯ {b}... {b}... {a}... {a,¦Å}

FOLLOW¼¯ {#} {a} {a} {a} SELECT(S¡úA a)¡ÉSELECT(S¡úb) ={ b }¡É { b }={ b }¡ÙSELECT(N¡úa B N)¡ÉSELECT(N¡ú¦Å) ={ a }¡É { a }={ a }¡ÙËùÒÔÎÄ·¨²»ÊÇLL(1)µÄ¡£

7.(5)ÒÔA¡¢BµÄ²úÉúʽ´úÈëSµÄ²úÉúʽÖеÄA¡¢B£¬µÃÐÂÎÄ·¨£º S¡úaC S¡úaC S¡úaC S¡úaC

C¡úAb|b|a

A¡úaA|a

A¡úaA|a

ÒÔAµÄ²úÉúʽ´úÈëCÖÐÌáÈ¡×󹫹²Òò×ӵãº

C¡úaD|b D¡úAb|b|¦Å C¡úaD|b D¡úaE|¦Å C¡úaD|b D¡úaE|¦Å

ÒÔAµÄ²úÉúʽ´úÈëDÖÐÌáÈ¡×󹫹²Òò×ӵãº

E¡úAb|b A¡úaA|a E¡úaF

F¡úAb|b A¡úaA|a

ÒÔAµÄ²úÉúʽ´úÈëEÖÐÌáÈ¡×󹫹²Òò×ӵãº

¾«Æ·Îĵµ