µÚÒ»·¶ÎÄÍø - רҵÎÄÕ·¶ÀýÎĵµ×ÊÁÏ·ÖÏíÆ½Ì¨

±àÒëÔ­ÀíÆÚÄ©¸´Ï°Ìâ(º¬´ð°¸2011-5)

À´Ô´£ºÓû§·ÖÏí ʱ¼ä£º2025/10/1 1:59:54 ±¾ÎÄÓÉloading ·ÖÏí ÏÂÔØÕâÆªÎĵµÊÖ»ú°æ
˵Ã÷£ºÎÄÕÂÄÚÈݽö¹©Ô¤ÀÀ£¬²¿·ÖÄÚÈÝ¿ÉÄܲ»È«£¬ÐèÒªÍêÕûÎĵµ»òÕßÐèÒª¸´ÖÆÄÚÈÝ£¬ÇëÏÂÔØwordºóʹÓá£ÏÂÔØwordÓÐÎÊÌâÇëÌí¼Ó΢ÐźÅ:xxxxxxx»òQQ£ºxxxxxx ´¦Àí£¨¾¡¿ÉÄܸøÄúÌṩÍêÕûÎĵµ£©£¬¸ÐлÄúµÄÖ§³ÖÓëÁ½⡣

¢Æ ¸ÃÎÄ·¨µÄ LR(0) ·ÖÎö±í£º

״̬ 0 1 2 3 4 5 6 7

ACTION a S 2 S 3 r 3 r 2 r 5 S 2 r 4 /S 3 b r 3 S 5 r 2 /S 6 r 5 r 4 # acc r 3 r 2 r 5 r 4

GOTO S 1 7 A 4 ¢Ç LR(0) ÎÄ·¨£º¸ÃÎÄ·¨µÄÒÔ LR(0) ÏîÄ¿¼¯Îª×´Ì¬µÄʶ±ð¹æ·¶¾äÐÍ»îǰ׺µÄ DFA ÖÐûÓгåͻ״̬¡£

¸ÃÎÄ·¨²»ÊÇ LR(0) ÎÄ·¨£¬ÒòΪ´æÔÚ³åͻ״̬£º I 4 ºÍ I 7¡£

¢È SLR(1) ÎÄ·¨£º¸ÃÎÄ·¨µÄÒÔ LR(0) ÏîÄ¿¼¯Îª×´Ì¬µÄʶ±ð¹æ·¶¾äÐÍ»îǰ׺µÄ DFA ÖÐÓгåͻ״̬£¬³åÍ»¿ÉÓà FOLLOW ¼¯½â¾ö¡£

¸ÃÎÄ·¨²»ÊÇ SLR(1) ÎÄ·¨¡£ÒòΪ FOLLOW(S)={a,b,#} £¬ËùÒÔÎÞ·¨½â¾ö³åÍ»¡£

24¡¢¶ÔÏÂÃæµÄÎÄ·¨G£º S->aBc|bAB A->aAb|b B->b|¦Å

(1)¼ÆËãÕâ¸öÎÄ·¨µÄÿ¸ö·ÇÖÕ½á·ûµÄFIRSTºÍFOLLOW¼¯ºÏ£» £¨2£©Ö¤Ã÷Õâ¸öÎÄ·¨ÊÇLL£¨1£©µÄ£» £¨3£©¹¹ÔìËüµÄÔ¤²â·ÖÎö±í¡£

´ð£º£¨1£©first(B)={b, ¦Å},first(A)={a,b},first(S)={a,b} Follow(S)={#},follow(A)={b,#},follow(B)={c,#} (2)ÒòΪֻÓÐFIRST(B)º¬ÓÐ? , ËùÒÔÖ»¿¼ÂÇ£º FOLLOW(B)=FIRST(c) ?FOLLOW(S)={c, #} ¡à¸ÃÎÄ·¨µÄLL(1)±í (3)¸ÃÎÄ·¨µÄLL(1)·ÖÎö±íÈçÏ£º

a b c # ? ? S aBc bAB A aAb b B b

25¡¢Éè×Öĸ±í¡Æ={ a£¬b}£¬¶ÔÓÚÒÔaa»òab½áβµÄ×ÖµÄÕý¹æ¼¯¡£ £¨1£©Çëд³öÃèÊö¸ÃÓïÑÔµÄÕý¹æÊ½¡£

£¨2£©¹¹Ôì¸ÃÕý¹æÊ½Ëù¶ÔÓ¦µÄNFA£¨»­³öת»»Í¼£©£» £¨3£©½«ËùÇóµÄNFAÈ·¶¨»¯£¨»­³öDFAµÄת»»Í¼£©£»

£¨4£©½«ËùÇó³öµÄDFA×îС»¯£¨»­³ö¼«Ð¡»¯ºóµÄת»»Í¼£©£» ´ð£º £¨1£©ÕýÔòʽΪ£º£¨a|b£©*a(a|b£©¡£ £¨1·Ö£©

£¨2£©ÓÉÕýÔòʽµÃµ½µÄת»»ÏµÍ³ÈçÏÂͼ£º £¨1·Ö£©

£¨3£©ÓÉ×Ó¼¯·¨¹¹ÔìµÄDFAÈçÏÂͼ£º

£¨4£©DFA×îС»¯ÈçÏÂͼ£º

26¡¢ÉèÎÄ·¨GΪ S ? E

E? TE | ¦Å T ? eT | t

(1)Ö¤Ã÷ËüÊÇLR(1)ÎÄ·¨£» (2)¹¹ÔìËüµÄLR(1)·ÖÎö±í£»

(3)¸ø³öÊäÈë·ûºÅ´®etetµÄ·ÖÎö¹ý³Ì¡£

´ð£º(1)ÍØ¹ãÎÄ·¨G¡¯£º£¨1·Ö£©

(0) S' ?S (1) S ? E (2) E? TE (3) E ?¦Å (4) T ? eT (5) T ? t FIRST(A) = {¦Å, e,t}

FIRST(B) = {e, t} ¹¹ÔìµÄDFAÈçÏÂ:

ÓÉÏîÄ¿¼¯¹æ·¶×å¿´³ö£¬²»´æÔÚ³åÍ»¶¯×÷¡£ ¡à¸ÃÎÄ·¨ÊÇLR(1)ÎÄ·¨¡£ (2)

LR(1)·ÖÎö±í

Action Goto ״̬ e t # S E T 0 S4 S5 r3 1 2 3 1 acc 2 r1 3 S4 S5 r3 6 3 4 S4 S5 7 5 r5 r5 r5 6 r2 7 r4 r4 r4 (3)ÊäÈë´®ababµÄ·ÖÎö¹ý³ÌΪ£º

²½Öè ״̬ջ ·ûºÅÕ» µ±Ç°×Ö·û Ê£Óà×Ö·û´® ¶¯×÷ (1) 0 # e tet# ÒÆ½ø (2) 04 #e t et# ÒÆ½ø (3) 045 #et e t# ¹éÔ¼ T?t (4) 047 #eT e t# ¹éÔ¼ T?et (5) 03 #T e t# ÒÆ½ø (6) 034 #Te t # ÒÆ½ø (7) 0345 #TeT # ¹éÔ¼ T?t (8) 0347 #TeT # ¹éÔ¼ T?et (9) 033 #TT # ¹éÔ¼ E?¦Å (10) 0336 #TTE # ¹éÔ¼ E?TE (11) 036 #TE # ¹éÔ¼ E?TE (12) 02 # E # ¹éÔ¼ S?E (13) 01 #S # acc

27¡¢¶ÔÎÄ·¨G(S)£º

S ? S ? a T | a T | ? a T T ? ? a T | ? a

(1) Ïû³ý¸ÃÎÄ·¨µÄ×óµÝ¹éºÍÌáÈ¡×ó¹«Òò×Ó£» (2) ¹¹Ôì¸÷·ÇÖÕ½á·ûµÄFIRSTºÍFOLLOW¼¯ºÏ£»

(3) ¹¹Ôì¸ÃÎÄ·¨µÄLL(1)·ÖÎö±í£¬²¢ÅжϸÃÎÄ·¨ÊÇ·ñÊÇLL(1)µÄ¡£ ´ð£º£¨1£©Ïû³ý×óµÝ¹é

S ? a T S¡¯ | ? a T S¡¯ S¡¯ ? ? a T S¡¯ | ¦Å T ? T ? ? a T | ? a ÌáÈ¡×ó¹«Òò×Ó

S ? a T S¡¯ | ? a T S¡¯ S¡¯ ? ? a T S¡¯ | ¦Å T ? ? a T¡¯ T¡¯ ? T | ¦Å

(2) ¸÷·ÇÖÕ½á·ûµÄFIRSTºÍFOLLOW¼¯ºÏ£º

FIRST(S)={a£¬?} FIRST(S')={ ?£¬¦Å} FIRST(T)={ ? } FIRST(T')={ ?£¬¦Å} FOLLOW(S)={#} FOLLOW(S')={#} FOLLOW(T)={?£¬#} FOLLOW(T')={?£¬#}

(3) LL(1)·ÖÎö±íÈçÏÂ(3·Ö) £¬¸ÃÎÄ·¨ÊÇLL(1)ÎÄ·¨¡££¨1·Ö£©

a ? ? # S S?aTS' S??aTS' S' S'??aTS S¡¯?¦Å T T'

' T??aT' T'?¦Å T'?T T'?¦Å

ËÑË÷¸ü¶à¹ØÓÚ£º ±àÒëÔ­ÀíÆÚÄ©¸´Ï°Ìâ(º¬´ð°¸2011-5) µÄÎĵµ
±àÒëÔ­ÀíÆÚÄ©¸´Ï°Ìâ(º¬´ð°¸2011-5).doc ½«±¾ÎĵÄWordÎĵµÏÂÔØµ½µçÄÔ£¬·½±ã¸´ÖÆ¡¢±à¼­¡¢ÊղغʹòÓ¡
±¾ÎÄÁ´½Ó£ºhttps://www.diyifanwen.net/c9yc496h44k7zlrl1b2tf_5.html£¨×ªÔØÇë×¢Ã÷ÎÄÕÂÀ´Ô´£©
ÈÈÃÅÍÆ¼ö
Copyright © 2012-2023 µÚÒ»·¶ÎÄÍø °æÈ¨ËùÓÐ ÃâÔðÉùÃ÷ | ÁªÏµÎÒÃÇ
ÉùÃ÷ :±¾ÍøÕ¾×ðÖØ²¢±£»¤ÖªÊ¶²úȨ£¬¸ù¾Ý¡¶ÐÅÏ¢ÍøÂç´«²¥È¨±£»¤ÌõÀý¡·£¬Èç¹ûÎÒÃÇ×ªÔØµÄ×÷Æ·ÇÖ·¸ÁËÄúµÄȨÀû,ÇëÔÚÒ»¸öÔÂÄÚ֪ͨÎÒÃÇ£¬ÎÒÃǻἰʱɾ³ý¡£
¿Í·þQQ£ºxxxxxx ÓÊÏ䣺xxxxxx@qq.com
ÓåICP±¸2023013149ºÅ
Top