±àÒëÔ­ÀíÆÚÄ©ÊÔÌ⣨8Ì׺¬´ð°¸+´óÌ⼯£© ÏÂÔØ±¾ÎÄ

¾Å ÉèÓÐÒÔϳÌÐò¶Î procedure P(x,y,z) begin

Y:=y*3; Z:=X+z; end; begin

a:=5; b:=2; p(a*b,a,a); print(a); end

Èô²ÎÊý´«µÝµÄ·½·¨·Ö±ðΪ£¨1£©´«Öµ¡¢£¨2£©´«µØÖ·¡¢£¨3£©´«Ãû£¬ÊÔÎʽá¹û·Ö±ðʲô£¿ ¡¾¡¿¡¾¡¿Ê® £¨1£©´«Öµ 5£» £¨2£©´«µØÖ· 25£» £¨3£©´«Ãû 45

Ê® ¶ÔÒÔÏÂÎÄ·¨£¬Çëд³ö¹ØÓÚÀ¨ºÅǶÌײãÊýµÄÊôÐÔÎÄ·¨¡£(ΪS,LÒýÈëÊôÐÔh,ÓÃÀ´¼Ç

¼Êä³öÅä¶ÔµÄÀ¨ºÅ¸öÊý) ÎÄ·¨¹æÔò S¡ú(T) S¡úi T¡úT,S T¡úS Óï Òå ¹æ Ôò ´ð°¸£º

ʮһ ¶ÔPL/0ÓïÑÔµÄwhileÓï¾ä while Ìõ¼þB DO Óï¾äS µÄ±àÒë³ÌÐò£¬

ÇëÔÚ¿Õȱ´¦Ìî¿Õ£¬Íê³É¸ÃÓï¾äµÄ±àÒëËã·¨£º switch (SYM) { ¡­¡­

case WHILESYM:

CX1=CX ;

GetSym();

CONDITION(SymSetAdd(DOSYM,FSYS),LEV,TX);

CX2=CX ; GEN(JPC,0,0);

if (SYM==DOSYM)

GetSym() ;

else Error(18); STATEMENT(FSYS,LEV,TX); GEN(JMP,0,CX1);

CODE[CX2].A=CX £»

break;

¡­¡­}

¡¶±àÒëÔ­Àí¡·ÆÚÄ©ÊÔÌ⣨Æß£©

Ò»¡¢»Ø´ðÏÂÁÐÎÊÌ⣺(30·Ö)

1£®Ê²Ã´ÊÇS-ÊôÐÔÎÄ·¨£¿Ê²Ã´ÊÇL-ÊôÐÔÎÄ·¨£¿ËüÃÇÖ®¼äÓÐʲô¹ØÏµ£¿ ½â´ð£º

S-ÊôÐÔÎÄ·¨ÊÇÖ»º¬ÓÐ×ÛºÏÊôÐÔµÄÊôÐÔÎÄ·¨¡£ £¨2·Ö£©

L-ÊôÐÔÎÄ·¨ÒªÇó¶ÔÓÚÿ¸ö²úÉúʽA?X1X2¡­Xn£¬Æäÿ¸öÓïÒ广ÔòÖеÄÿ¸öÊôÐÔ»òÕßÊÇ×ÛºÏÊôÐÔ£¬»òÕßÊÇXjµÄÒ»¸ö¼Ì³ÐÊôÐÔ£¬ÇÒ¸ÃÊôÐÔ½öÒÀÀµÓÚ£º

£¨1£© ²úÉúʽXjµÄ×ó±ß·ûºÅX1,X2¡­Xj-1µÄÊôÐÔ£»

£¨2£© AµÄ¼Ì³ÐÊôÐÔ¡£ £¨2·Ö£© S-ÊôÐÔÎÄ·¨ÊÇL-ÊôÐÔÎÄ·¨µÄÌØÀý¡£ £¨2·Ö£©

2£®Ê²Ã´ÊǾä±ú£¿Ê²Ã´ÊÇËØ¶ÌÓ

Ò»¸ö¾äÐ͵Ä×î×óÖ±½Ó¶ÌÓï³ÆÎª¸Ã¾äÐ͵ľä±ú¡££¨3·Ö£©ËضÌÓïÊÇÕâÑùµÄÒ»¸ö¶ÌÓËüÖÁÉÙ°üº¬Ò»¸öÖÕ½á·û²¢ÇÒ²»°üº¬¸üСµÄËØ¶ÌÓï¡££¨3·Ö£©

3£®»®·Ö³ÌÐòµÄ»ù±¾¿éʱ£¬È·¶¨»ù±¾¿éµÄÈë¿ÚÓï¾äµÄÌõ¼þÊÇʲô£¿ ½â´ð£º

£¨1£©³ÌÐòµÚÒ»¸öÓï¾ä£¬»ò

£¨2£©ÄÜÓÉÌõ¼þ×ªÒÆÓï¾ä»òÎÞÌõ¼þ×ªÒÆÓï¾ä×ªÒÆµ½µÄÓï¾ä£¬»ò £¨3£©½ô¸úÔÚÌõ¼þ×ªÒÆÓï¾äºóÃæµÄÓï¾ä¡£

4£®(6·Ö)ÔËÐÐʱµÄDISPLAY±íµÄÄÚÈÝÊÇʲô£¿ËüµÄ×÷ÓÃÊÇʲô£¿

´ð£ºDISPLAY±íÊÇǶÌײã´ÎÏÔʾ±í¡£Ã¿µ±½øÈëÒ»¸ö¹ý³Ìºó£¬ÔÚ½¨Á¢ËüµÄ»î¶¯¼ÇÂ¼ÇøµÄͬʱ½¨Á¢Ò»ÕÅǶÌײã´ÎÏÔʾ±ídiaplay.¼Ù¶¨ÏÖÔÚ½øÈëµÄ¹ý³Ì²ã´ÎΪi£¬ÔòËüµÄdiaplay±íº¬ÓÐi+1¸öµ¥Ôª£¬×Ô¶¥ÏòÏÂÿ¸öµ¥ÔªÒÀ´Î´æ·Å×ÅÏÖÐв㡢ֱ½ÓÍâ²ã¡¢¡­¡¢Ö±ÖÁ×îÍâ²ã(Ö÷³ÌÐò£¬0²ã)µÈÿ²ã¹ý³ÌµÄ×îл¼Ç¼µÄÆðʼµØÖ·¡£Í¨¹ýDISPLAY±í¿ÉÒÔ·ÃÎÊÆäÍâ²ã¹ý³ÌµÄ±äÁ¿¡£

5£®(6·Ö)¶ÔÏÂÁÐËÄԪʽÐòÁÐÉú³ÉÄ¿±ê´úÂ룺 A:=B*C D:=E+F G:=A+D H:=G*2

ÆäÖУ¬HÊÇ»ù±¾¿é³ö¿ÚµÄ»îÔ¾±äÁ¿£¬ R0ºÍR1ÊÇ¿ÉÓüĴæÆ÷ ´ð£º

LD R0£¬ B MUL R0£¬ C LD R1£¬ E ADD R1£¬ F ADD R0£¬ R1 MUL R0£¬ 2 ST R0£¬ H

¶þ¡¢Éè?={0£¬1}ÉϵÄÕý¹æ¼¯SÓɵ¹ÊýµÚ¶þ¸ö×Ö·ûΪ1µÄËùÓÐ×Ö·û´®×é³É£¬Çë¸ø³ö¸Ã×Ö¼¯¶ÔÓ¦µÄÕý¹æÊ½£¬²¢¹¹ÔìÒ»¸öʶ±ð¸ÃÕý¹æ¼¯µÄDFA¡£(8·Ö)

´ð£º

¹¹ÔìÏàÓ¦µÄÕý¹æÊ½£º(0|1)*1(0|1) (3·Ö) NFA: (2·Ö)

1 1

? ? ? ? 1 0 1 2 3 4

0 0 È·¶¨»¯£º(3·Ö)

I {0,1,2} {1,2} {1,2,3} {1,2,4} {1,2,3,4} I0 I1 {1,2} {1,2} {1,2,4} {1,2} {1,2,4} {1,2,3} {1,2,3} {1,2,3,4} {1,2,3} {1,2,3,4}

0

1 0 1 0 0 0 1 2 3 4

0 1 1 1

Èý¡¢Ð´Ò»¸öÎÄ·¨Ê¹ÆäÓïÑÔΪL(G)={ anbmambn | m,n¡Ý1}¡£(6·Ö)

´ð£ºÎÄ·¨G(S):

S ? aSb | B B ? bBa | ba

ËÄ¡¢¶ÔÓÚÎÄ·¨G(E): (8·Ö)

E?T|E+T T?F|T*F F?(E)|i

1. д³ö¾äÐÍ(T*F+i)µÄ×îÓÒÍÆµ¼²¢»­³öÓï·¨Ê÷¡£

2. д³öÉÏÊö¾äÐ͵ĶÌÓֱ½Ó¶ÌÓï¡¢¾ä±úºÍËØ¶ÌÓï¡£ ´ð£º 1. (4·Ö)

E?T?F?(E) ?(E+T) ?(E+F)

E T F ?(E+i) ?(T+i) ?(T*F+i)

2. (4·Ö)

¶ÌÓ(T*F+i), T*F+i, T*F, i Ö±½Ó¶ÌÓT*F, i ¾ä±ú£ºT*F ËØ¶ÌÓT*F, i

Îå¡¢ÉèÎÄ·¨G(S)£º(12·Ö)

T ( E ) E + T T F * F i