µ±Ç°Î»ÖãºÊ×Ò³ > ±àÒëÔÀí¸´Ï°Ìâ-¸øÑ§Éú£¨¼ò£©
¡¶±àÒëÔÀí¡·¸´Ï°Ìâ
A ¡ú BS | d B ¡ú aA| bS | c ÊÇ·ñΪLL(1)ÎÄ·¨.
½â£º¶ÔÓÚ¸ÃÎÄ·¨ÇóÆäFIRST¼¯ÈçÏ£º
FIRST(S) = {a, b, c}; FIRST(A) = {a, b, c, d}; FIRST(B) = {a, b, c}¡£ ÇóÆäFOLLOW¼¯ÈçÏ£º
FOLLOW(S) = {a, b, c, d, #}; FOLLOW(A) = {a, b, c, d, #}; FOLLOW(B) = {a, b, c, d, #}¡£ ÓÉA ¡ú BS | d µÃ£º
FIRST(BS) ¡É FIRST(¡®d¡¯) = {a, b, c} ¡É {d} = ¦µ
ÓÉB ¡ú aA| bS | c µÃ
FIRST(aA) ¡É FIRST(bS) ¡É FIRST(c) = {a} ¡É{b}¡É {c} =¦µ
ÓÉÓÚÎÄ·¨G[S]²»´æÔÚÐÎÈç¦Â¡ú¦ÅµÄ²úÉúʽ£¬¹ÊÎÞÐèÇó½âÐÎÈçFIRST(¦Á) ¡É FOLLOW(A)µÄÖµ£¬Ò²¼´ÎÄ·¨G[S]ÊÇÒ»¸öLL(1)ÎÄ·¨¡£
7£®¶ÔÓÚÎÄ·¨G[E]: E¡úE+T | T
T¡úT+P | P P¡ú(E) | i
д³ö¾äÐÍP+T+(E+i)µÄËùÓжÌÓï¡¢Ö±½Ó¶ÌÓï¡¢¾ä±ú¡£
½â£º¶ÌÓP¡¢P+T¡¢i¡¢E+i¡¢(E+i )¡¢P+T+(E+i )£» Ö±½Ó¶ÌÓP¡¢i£» ¾ä±ú£ºP£»
8£®ÒÑÖªÎÄ·¨G[A]: A¡úaABl|a
B¡úBb|d
ÊÔ¸ø³öÓëG[A]µÈ¼ÛµÄLL(1)ÎÄ·¨G[A¡ä]£» ½â£ºG[A¡ä]£ºA¡úaA¡ä
A¡ä¡úABl | ¦Å B¡údB¡ä
B¡ä¡úbB¡ä| ¦Å
9£®½«ÏÂÃæµÄÓï¾ä·Òë³ÉËÄԪʽÐòÁУº if (x£¾y) m= 1; else m=0;
½â£º1 (j£¾,x,y,3)
2 (j,_,_,5) 3 (=,1,_,m) 4 (j,_,_,6) 5 (=,0,_,m)
13
6:
10£®½«ÒÔÏÂDFA ×îС»¯¡££¨8·Ö£©
2bXa1a?Y ½â£º
a0b1
11£®ÉèM=({x,y}, {a,b}, f, x, {y})Ϊһ·ÇÈ·¶¨µÄÓÐÏÞ×Ô¶¯»ú£¬ÆäÖÐf¶¨ÒåÈçÏ£º
f(x,a)={x,y} f{x,b}={y} f(y,a)=¦µ f{y,b}={x,y} ÊÔ¹¹ÔìÏàÓ¦µÄÈ·¶¨ÓÐÏÞ×Ô¶¯»úM¡ä¡££¨12·Ö£©
½â£º¶ÔÕÕ×Ô¶¯»úµÄ¶¨ÒåM=(S,¦²,f,So,Z)£¬ÓÉfµÄ¶¨Òå¿ÉÖªf(x,a)¡¢f(y,b)¾ùΪ¶àÖµº¯Êý£¬Òò´ËMÊÇÒ»·ÇÈ·¶¨ÓÐÏÞ×Ô¶¯»ú¡£ ÏÈ»³öNFA MÏàÓ¦µÄ״̬ͼ£¬ÈçÏÂͼËùʾ¡£
aabbXYb
ÓÃ×Ó¼¯·¨¹¹Ôì״̬ת»»¾ØÕó£¬ÈçϱíËùʾ¡£
I {x} {y} {x,y} Ia {x,y} ¡ª {x,y} Ib {y} {x,y} {x,y} ½«×ª»»¾ØÕóÖеÄËùÓÐ×Ó¼¯ÖØÐÂÃüÃû£¬ÐγÉϱíËùʾµÄ״̬ת»»¾ØÕ󣬼´µÃµ½
f ×Ö·û ״̬ 0 1 2 a 2 ¡ª 2 b 1 2 2
¡¶±àÒëÔÀí¡·¸´Ï°Ìâ
M¡ä=({0,1,2},{a,b},f,0,{1,2})£¬ M¡ä״̬ת»»Í¼ÈçÏÂͼËùʾ¡£ a
02a, b
b b1
£¨×¢Ò⣺±¾ÌâÓÉÓÚ¼¯ºÏµÄÃüÃûºÍÏȺó˳Ðò²»Í¬£¬¿ÉÄÜ×îÖÕ½á¹û²»Í¬¡££©
12£®ÊÔ¹¹ÔìÏÂÊöÎÄ·¨µÄSLR(1)·ÖÎö±í¡££¨13·Ö£©
G[A]: A¡úaABl|a
B¡úBb|d
½â£ºÍعãÎÄ·¨ £¨0£©S¡úA
£¨1£©A¡úaABl £¨2£©A¡úa £¨3£©B¡úBb £¨4£©B¡úd
I0£ºS¡ú£®A A¡ú£®aABl a A¡ú£®a I1£ºS¡úA£® I2£ºA¡úa£®ABl A A¡úa£® A¡ú£®aABl A¡ú£®a I3£º A¡úaA£®Bl d B¡ú£®Bb B¡ú£®d B I4£ºB¡úd£® a I5£º A¡úaAB£®l B¡úB£®b b I7£º B¡úBb£® l I6£º A¡úaABl£® if (x£¾y) m= 1; else m=x+y;
½â£º1 (j£¾,x,y,3)
2 (j,_,_,5) 3 (=,1,_,m) 4 (j,_,_,7) 5 (+,x,y,T1) 6 (=, T1,_,m) 7:
14. ÊÔ¹¹ÔìÏÂÊöÎÄ·¨µÄLL(1)·ÖÎö±í¡££¨15·Ö£©
G[S]: S¡ú£¨L£©|a
L¡úL£¬S|S
½â£ºÏû³ý×óµÝ¹é£º
G(S): S ? (L) | a L ? SL¡¯ L¡¯ ? , SL¡¯| ¦Å
¹¹ÔìFIRST¼¯£¬ÈçÏ£º £¨1£©FIRST(S) = {(, a} £¨2£©FIRST(L) = {(, a}
£¨3£©FIRST(L¡¯) = {,, ¦Å} ¹¹ÔìFOLLOW¼¯ÈçÏ£º £¨1£©FOLLOW(S) = {#, ,, )} £¨2£©FOLLOW(L) = {)} £¨3£©FOLLOW(L¡¯) = {)}
LL(1)·ÖÎö±í S L ( S ? (L) L ? SL¡¯ ) L¡¯ ? ¦Å a S ? a L ? SL¡¯ , L¡¯ ? ,SL¡¯ #
First£¨A£©={a}follow£¨A£©={#£¬d} First£¨B£©={d}follow£¨B£©={l} SLR£¨1£©·ÖÎö±íÈçÏ£º 0 1 2 3 4 5 6 7
L¡¯ a S2 S2 b S7 d R2 S4 R1 l R4 S6 R3 # ACC R2 R1 A 1 3 B 5 14
13£®½«ÏÂÃæµÄÓï¾ä·Òë³ÉËÄԪʽÐòÁУº£¨7·Ö£©
15£®ÅжÏÎÄ·¨G[S]: S ¡ú BA
A ¡ú BS | d B ¡ú aA| bS | c ÊÇ·ñΪLL(1)ÎÄ·¨.
½â£º¶ÔÓÚ¸ÃÎÄ·¨ÇóÆäFIRST¼¯ÈçÏ£º
FIRST(S) = {a, b, c}; FIRST(A) = {a, b, c, d}; FIRST(B) = {a, b, c}¡£ ÇóÆäFOLLOW¼¯ÈçÏ£º
FOLLOW(S) = {a, b, c, d, #}; FOLLOW(A) = {a, b, c, d, #}; FOLLOW(B) = {a, b, c, d, #}¡£ ÓÉA ¡ú BS | d µÃ£º
¡¶±àÒëÔÀí¡·¸´Ï°Ìâ
FIRST(BS) ¡É FIRST(¡®d¡¯) = {a, b, c} ¡É {d} = ¦µ
ÓÉB ¡ú aA| bS | c µÃ
FIRST(aA) ¡É FIRST(bS) ¡É FIRST(c) = {a} ¡É{b}¡É {c} =¦µ
ÓÉÓÚÎÄ·¨G[S]²»´æÔÚÐÎÈç¦Â¡ú¦ÅµÄ²úÉúʽ£¬¹ÊÎÞÐèÇó½âÐÎÈçFIRST(¦Á) ¡É FOLLOW(A)µÄÖµ£¬Ò²¼´ÎÄ·¨G[S]ÊÇÒ»¸öLL(1)ÎÄ·¨¡£ 16£®¶ÔÓÚÎÄ·¨G[E]: E¡úE+T | T
T¡úT+P | P P¡ú(E) | i
д³ö¾äÐÍP+T+(E+i)µÄËùÓжÌÓï¡¢Ö±½Ó¶ÌÓï¡¢¾ä±ú¡£ ½â£º¶ÌÓP¡¢i¡¢E+i¡¢(E+i )¡¢T+(E+i )¡¢P+T+(E+i )£» Ö±½Ó¶ÌÓP¡¢i£» ¾ä±ú£ºP£»
17£®ÒÑÖªÎÄ·¨G[S]: S¡úaSbS|bSaS|¦Å ÊÔÖ¤Ã÷G[S]ÊǶþÒåÎÄ·¨
Ö¤Ã÷£º ¸ÃÎÄ·¨²úÉúµÄÓïÑÔÊÇaµÄ¸öÊýºÍbµÄ¸öÊýÏàµÈµÄ´®µÄ¼¯ºÏ¡£¸ÃÎÄ·¨¶þÒ壬ÀýÈç¾ä×ÓababÓÐÁ½ÖÖ²»Í¬µÄ×î×óÍÆµ¼¡£
S?aSbS?abS?abaSbS?ababS?abab S?aSbS?abSaSbS?abaSbS?ababS?abab 18£®½«ÏÂÃæµÄÓï¾ä·Òë³ÉËÄԪʽÐòÁУº while(a
if (c£¾d) x=y+z ½â£º100 (j<,a,b,102)
101 (j,_,_,107) 102 (j>,c,d,104) 103 (j,_,_,106) 104 (+,y ,z ,t) 105 (=,t ,_ ,x) 106 (j,_,_,100) 107:
19£®¹¹ÔìÕý¹æ±í´ïʽa(aa)*bb(bb)*a µÄ×îС»¯µÄÈ·¶¨ÓÐÏÞ×Ô¶¯»úM¡ä¡£
½â£ºÏÈ»³öÕý¹æÊ½ÏàÓ¦µÄNFA M״̬ͼ£¬ÈçÏÂͼËùʾ¡£
2 5
a a b b
a b b a X 1 3 4 Y
15
ÓÃ×Ó¼¯·¨¹¹Ôì״̬ת»»¾ØÕó£¬ÈçϱíËùʾ¡£ I {x} {1} {2} {3} {4} {5} {Y} Ia {1} {2} {1} - {Y} - - Ib - {3} - {4} {5} {4} - ½«×´Ì¬·ÖΪÖÕ̬¼¯{Y}ºÍ·ÇÖÕ̬¼¯{X,1,2,3,4,5} ÒòΪ£ûX,1,2,3,4,5£ýa={1,2,1,_,Y,_} ËùÒÔ·ÇÖÕ̬¼¯·ÖΪ{X,1,2},{3,5},{4} ÒòΪ{X,1,2}b={_,3,_},ËùÒÔ·ÖΪ
×îºóµÃµ½¼¯ºÏ{X,2},{1},{3,5},{4},{Y}ÖØÐÂÃüÃûΪ1£¬2£¬3£¬4£¬5µÃµ½×îС»¯µÄDFA M¡ä״̬ת»»¾ØÕóºÍ״̬ת»»Í¼ÈçÏÂͼËùʾ¡£
I 1 2 3 4 5 Ia 2 1 - 5 - Ib _ 3 4 3 _
a b b a
3 4 1 2 5 a b £¨×¢Ò⣺±¾ÌâÓÉÓÚ¼¯ºÏµÄÃüÃûºÍÏȺó˳Ðò²»Í¬£¬¿ÉÄÜ×îÖÕ½á¹û²»Í¬¡££©
20£®ÊÔ¹¹ÔìÏÂÊöÎÄ·¨µÄSLR(1)·ÖÎö±í¡£
G[A]: A¡úaABl|a
B¡úBb|d
½â£ºÍعãÎÄ·¨ £¨0£©S¡úA
£¨1£©A¡úaABl £¨2£©A¡úa £¨3£©B¡úBb £¨4£©B¡úd
¡¶±àÒëÔÀí¡·¸´Ï°Ìâ
I0£ºS¡ú£®A A A¡ú£®aABl A¡ú£®a a I1£ºS¡úA£® £¨1£©´Ê·¨·ÖÎöÆ÷£¬ÓÖ³ÆÉ¨ÃèÆ÷£¬Ëü½ÓÊÜÊäÈëµÄÔ´³ÌÐò£¬¶ÔÔ´³ÌÐò½øÐдʷ¨·ÖÎö£¬Ê¶±ð³öÒ»¸ö¸öµ¥
I2£ºA¡úa£®ABl A¡úa£® A¡ú£®aABl A¡ú£®a A I3£ºA¡úaA£®Bl B¡ú£®Bb B¡ú£®d B d ´Ê·ûºÅ£¬ÆäÊä³ö½á¹ûÊǶþԪʽ(µ¥´ÊÖֱ𣬵¥´Ê×ÔÉí
I4£ºB¡úd£® µÄÖµ)Á÷¡£
£¨2£©Óï·¨·ÖÎöÆ÷£¬¶Ôµ¥´Ê·ûºÅ´®½øÐÐÓï·¨·ÖÎö
l I6£º A¡úaABl£® a I5£º A¡úaAB£®l B¡úB£®b b I7£º B¡úBb£® £¨¸ù¾ÝÓï·¨¹æÔò½øÐÐÍÆµ¼»ò¹éÔ¼£©£¬Ê¶±ð³ö³ÌÐòÖеĸ÷ÀàÓï·¨µ¥Î»£¬×îÖÕÅжÏÊäÈë´®ÊÇ·ñ¹¹³ÉÓï·¨ÉÏÕýÈ·µÄ¾ä×Ó¡£
£¨3£©ÓïÒå·ÖÎö¼°Öмä´úÂëÉú³ÉÆ÷£¬°´ÕÕÓïÒ广
Ôò¶ÔÓï·¨·ÖÎöÆ÷¹éÔ¼³ö£¨»òÍÆµ¼³ö£©µÄÓï·¨µ¥Î»½øÐÐÓïÒå·ÖÎö²¢°ÑËüÃÇ·Òë³ÉÒ»¶¨ÐÎʽµÄÖмä´úÂë¡£±àÒë³ÌÐò¿ÉÒÔ¸ù¾Ý²»Í¬µÄÐèҪѡÔñ²»Í¬µÄÖмä´úÂëÐÎʽ£¬ÓеıàÒë³ÌÐòÉõÖÁûÓÐÖмä´úÂëÐÎʽ£¬¶ø
First£¨A£©={a}follow£¨A£©={#£¬d} First£¨B£©={d}follow£¨B£©={l} SLR£¨1£©·ÖÎö±íÈçÏ£º a 0 1 2 3 4 5 6 7 S2 S2 b S7 ACTION d R2 S4 R1 l R4 S6 R3 # ACC R2 R1 GOTO A 1 3 B 5 Ö±½ÓÉú³ÉÄ¿±ê´úÂë¡£
£¨4£©ÓÅ»¯Æ÷¶ÔÖмä´úÂë½øÐÐÓÅ»¯´¦Àí¡£Ò»°ã×î³õÉú³ÉµÄÖмä´úÂëÖ´ÐÐЧÂʶ¼±È½ÏµÍ£¬Òò´ËÒª×öÖмä´úÂëµÄÓÅ»¯£¬Æä¹ý³Ìʵ¼ÊÉÏÊǶÔÖмä´úÂë½øÐеȼÛÌæ»»£¬Ê¹³ÌÐòÔÚÖ´ÐÐʱÄܸü¿ì£¬²¢Õ¼ÓøüСµÄ¿Õ¼ä¡£
£¨5£©Ä¿±ê´úÂëÉú³ÉÆ÷£¬°ÑÖмä´úÂë·Òë³ÉÄ¿±ê³ÌÐò¡£Öмä´úÂëÒ»°ãÊÇÒ»ÖÖÓë»úÆ÷Î޹صıíʾÐÎʽ£¬Ö»ÓаÑËüÔÙ·Òë³ÉÓë»úÆ÷Ó²¼þÖ±½ÓÏà¹ØµÄ»úÆ÷ÄÜʶ±ðµÄÓïÑÔ£¬¼´Ä¿±ê³ÌÐò£¬²ÅÄÜÔÚ»úÆ÷ÉÏÔËÐС£ £¨6£©±í¸ñ¹ÜÀíÄ£¿é±£³ÖһϵÁеıí¸ñ£¬µÇ¼ÇÔ´
21£®»³ö±àÒë³ÌÐòµÄ×ÜÌå½á¹¹Í¼£¬¼òÊö¸÷²¿·ÖµÄÖ÷Òª¹¦ÄÜ¡£
½â£º±àÒë³ÌÐòµÄ×ÜÌå¿òͼÈçÏÂËùʾ£º
±í´Ê·¨·ÖÎöÆ÷µ¥´Ê·ûºÅÓï·¨·ÖÎöÆ÷Óï·¨µ¥Î»ÓïÒå·ÖÎöÓëÖмä´úÂëÉú³ÉÆ÷³ö³ÌÐòµÄ¸÷ÀàÐÅÏ¢ºÍ±àÒë¸÷½×¶ÎµÄ½øÕ¹×´¿ö¡£±àÒë³ÌÐò¸÷¸ö½×¶ÎËù²úÉúµÄÖмä½á¹û¶¼¼Ç¼ÔÚ±í¸ñÖУ¬ËùÐèÒªµÄÐÅÏ¢Ò²´ó¶à´Ó±í¸ñÖлñÈ¡£¬Õû¸ö±àÒë¹ý³Ì¶¼
¸ñ´í¹ÜËÄԪʽÓÅ»¯¶ÎËÄԪʽĿ±ê´úÂëÉú³ÉÆ÷Ä¿±ê´úÂë´¦ÔÚ²»¶ÏºÍ±í¸ñ´ò½»µÀ¡£
£¨7£©³ö´í´¦Àí³ÌÐò¶Ô³öÏÖÔÚÔ´³ÌÐòÖеĴíÎó½øÐд¦Àí¡£Èç¹ûÔ´³ÌÐòÓдíÎ󣬱àÒë³ÌÐòÓ¦Éè·¨·¢ÏÖ
16
ÀíÀí´íÎ󣬰ÑÓйشíÎóÐÅÏ¢±¨¸æ¸øÓû§¡£±àÒë³ÌÐòµÄ¸÷
¹²·ÖÏí92ƪÏà¹ØÎĵµ