logo资料库

编译原理第三版答案.doc

第1页 / 共27页
第2页 / 共27页
第3页 / 共27页
第4页 / 共27页
第5页 / 共27页
第6页 / 共27页
第7页 / 共27页
第8页 / 共27页
资料共27页,剩余部分请下载后查看
P36-6
P36-7
P36-8
P36-9
P36-10
P36-11
P64–7
P64–8
P64–12
P64–14
P81–1
P81–2
P81–3
P133–1
P133–2
P133–3
P134–5
P164–5
P164–7
P217–1
P217–3
P218–4
P218–5
P218–6
P218–7
P219–12
P270–9
便编译原理课后题答案 第二章 P36-6 (1) L G( )1 是 0~9 组成的数字串 (2) 最左推导: ND N ND N N ND    最右推导: ND N N ND ND N    P36-7 NDDD  34 D    DDD   NDD DD NDD  3  7      8   ND 4 D ND N N N 7 4 8 N  34 N   DDDD  0 DDD  01 DD  012 D  0127 5 DD  56 D  568 27  ND 27  N 127  D 127  0127 68  D 68  568 G(S) O  N  D  S  A  | | | N 1 3 5 7 9 | | 2 4 6 8 | | | O 0 | | O AO | AD N P36-8 /  文法: | | T E T E T E   | * | F T F T F T  ( )| E i F  最左推导: * E E T i T F             ) *( * T F T i E T E   *( ) i i T i    F T * F F  ) i F   i T *( i E  ) i  T T  *( * i F *( i i  * i F F i   ) * i i F   ) *( T T   * i i i   *( i F T  ) 最右推导:
i * i T F i E E  * E T F E T     * F F T    *( *( F T i F F i * F T )   * E T i   ) *( E F  *( ) F i     *(  i i   * E F i E T F   *( ) i          ) ) i * i F i *( ) E i  * T i i )   E i F E F * i *( F i 语法树:/******************************** E + T F i T F i E + E T F i E + T F i E T F i T * F i E - T F i E - E T F i i+i+i i-i-i i+i*i *****************/ P36-9 句子 iiiei 有两个语法树: iiSei S S iiSei iSeS  iS   iSei  iiSeS     iiiei iiiei P36-10 /************** S T T TS ) (|)( S   | ***************/ P36-11 /*************** L1: S A C    L2: AC aAb cC | | ab
S A B    AB | aA bBc  | bc L3: S A B    L4: S A B    AB aAb aBb | |   | BA |10 A |01 B  A ***************/ P64–7 (1) 第三章习题参考答案 ( | )* 1 01 101 X Y 1 X 1  确定化: {X} φ {1,2,3} {2,3} {2,3,4} {2,3,5} {2,3,4,Y} 0 0 1 1 0 2 0  3 1 0 1 4 5 Y 0 φ φ {2,3} {2,3} {2,3,5} {2,3} {2,3,5} 1 {1,2,3} φ {2,3,4} {2,3,4} {2,3,4} {2,3,4,Y} {2,3,4,} 0 2 1 0 3 1 1 0
0 4 1 6 0 5 1 1 1 , } { , , 0 1 2 3 4 5 1 , ,  { , , } 1 2 4 6 , 0 5  最小化: , },{ } { , , 6 0 1 2 3 4 5 , , { , , } , } { , , 0 1 2 3 4 5 , , 1 3 5  , , },{ },{ } { , , 0 1 2 3 4 6 { , , } , , } { , , 0 1 2 3 4 1 3 5 0 , },{ },{ },{ } 6 4 { , , 5 0 1 2 3 0 1 2 3 3 , } { , , { , { , , 0 1 2 3 , } 1 }  1 0 6 2 3 4 5 0 1 { , },{ , }{ },{ },{ } 1 2 0 1 1 0 1 { , } { } { , } { , }   0 1 2 3 { } 2 3 3 { , } 4 { } { , }   0 1 5 1 6 { },{ },{ , },{ },{ },{ } 0 2 3 4  1 2 4 { , , } 0 2 3 1 0 0 1 0 1 1 1 0 0 4 1 1 5 0 P64–8 (1) 01)0|1( * (2) )5|0(|)5|0()9|8|7|6|5|4|3|2|1|0)(9|8|7|6|5|4|3|2|1( * (3) * )110|0(01|)110|0(10 * * * * * P64–12 (a) a 0 a,b a 1
确定化: {0} {0,1} {1} φ 给状态编号: 0 1 2 3 a 0 a b a 2 最小化: 2 3 { , },{ , } 0 1 { } { , } 0 1 1  a { , } { , } 2 3 0 3  a 2 { , },{ },{ } 0 1 3 b { , } 0 1  b { , } 2 3 { } 2  { } 3 a 0 0 a b a b a (b) b {1} {1} φ φ b 2 2 3 3 a {0,1} {0,1} {0} φ a 1 1 0 3 b a 3 b b b 1 b b 1 2 a 2 b 3 a
a b 1 a b a 4 a 5 已经确定化了,进行最小化 最小化:   2 3 4 5 { , , } , a a 2 3 4 5 0 1 {{ , }, { , , , }} 2 4 { , } 0 1 1 { } { , } 0 1 { , }  b 2 3 4 5 , { , , } , , } 1 3 0 5 { , 2 3 4 5 { , , } ,  b a { , } 3 5 1 0 { , } 2 4 { , } 2 4 { , }   b { , } 2 4 3 5 3 5 { , } { , } 3 5 { , }   b a 2 4 {{ , },{ , },{ , }} 3 5 0 1 1 { } 0 1 { , }  a { , } 2 4 1 0 { , }  { , } 3 5 { , } 3 5  2 4 { , } { , } 3 5  { , } 2 4  0 1 { , }  b { , } 2 4 b { , } 3 5 b a a b 0 a 1 0 a 0 0 P64–14 (1) (2): X )* ( | 010  X 1 1 b b a 2 1 Y 0 2 1  Y
确定化: {X,1,Y} {1,Y} {2} φ 给状态编号: 0 0 {1,Y} {1,Y} {1,Y} φ 0 1 2 3 0 0 1 1 1 3 1 1 0 1 0 1 2 0 0 1 3 最小化: 1 {2} {2} φ φ 1 2 2 3 3 2 3 { , },{ , } 0 1 { , } { } 0 1 1  0 { , } 2 3 { , } 1 3  2 { , },{ },{ } 0 1 3 0 { , } 0 1  1 { , } 2 3 1 { } 2  { } 3 0 0 1 0 1 1 1 3 0 第四章 P81–1 )(| T (1) 按照 T,S 的顺序消除左递归  )( SG |^ S a   T TS  | , T TS 递归子程序:
procedure S; begin if sym='a' or sym='^' then abvance else if sym='(' then begin advance;T; if sym=')' then advance; else error; end else error end; procedure T; begin S; T end; procedure begin T ; if sym=',' then begin advance; S; T end end; 其中: sym:是输入串指针 IP 所指的符号 advance:是把 IP 调至下一个输入符号 error:是出错诊察程序 (2) FIRST(S)={a,^,(} FIRST(T)={a,^,(} FIRST( T )={,,} FOLLOW(S)={),,,#} FOLLOW(T)={)} FOLLOW( T )={)} 预测分析表 a S a ST  T ^ S ^ ST  T ( S T T ( ) ST  ) , #  T  T ST,    S T T 是 LL(1)文法 P81–2 文法:
分享到:
收藏