编译原理_第1~5章习题课课件(精品·公开课件).pptVIP

  • 19
  • 0
  • 约1.14万字
  • 约 36页
  • 2018-11-05 发布于广西
  • 举报

编译原理_第1~5章习题课课件(精品·公开课件).ppt

chapter5 1、令文法G1为: E→E+T | T T→T*F | F F→(E) | i 证明E+T*F是它的一个句型,指出这个句型的所有 短语、直接短语和句柄。 E E + T T * F T*F是句型E+T*F相对于T的短语 E+T*F句型E+T*F相对于E的短语 T*F是句型E+T*F相对于T的直接短语 T*F是句柄 2、考虑下面的表格结构文法G2: S→a | ^ | (T) T →T,S | S (1)给出(a,(a,a))和(((a,a),^,(a)),a)的最左和最右推导。 (a,(a,a))的最左推导: S ? (T) ?(T,S) ?(S,S) ?(a,S) ?(a,(T)) ?(a,(T,S)) ?(a,(S,S)) ?(a,(a,S)) ?(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),S) ? (((S,S),S,S),S) ? (((a,S),S,S),S) ?(((a,a),S,S),S) ? (((a,a),^,S),S) ? (((a,a),^,a),S) ? (((a,a),^,a),a) (((a,a),^,(a)),a)的最右推导: S ? (T) ?(T,S) ?(S,S) ?(S,a) ?((T),a) ?((T,S,S),S) ?((S,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),^,a),S) ? (((a,a),^,a),a) (a,(a,a))的最右推导: S ? (T) ?(T,S) ?(T,(T)) ?(T,(T,S)) ?(T,(T,a)) ?(T,(S,a)) ?(T,(a,a)) ?(S,(a,a)) ?(a,(a,a)) 2)指出(((a,a),^,(a)),a)的规范归约及每一步的句柄。 S ( T ) T , S a ( T ) S T , S T , S ( T ) S a ^ ( T ) S T , S a S a 句型 句柄 归约规则 (((a,a),^,(a)),a) a S→a (((S,a),^,(a)),a) S T→S (((T,a),^,(a)),a) a S→a (((T,S),^,(a)),a) T,S T→T , S (((T),^,(a)),a) (T) S→(T) ((S,^,(a)),a) S T→S ((T,^,(a)),a) ^ S→^ ((T,S,(a)),a) T,S T→T , S ((T,(a)),a) a S→a ((T,(S)),a) S T→S ((T,(T)),a) (T) S→(T) ((T, S),a) T,S T→T , S ((T),a) T S→(T ) (S,a) S T→S (T,a) a S→a (T,S) T,S T→T , S (T) (T) S→(T) S 根据这个规范规约,给出“移进—归约”的过程, 并给出它的语法树的自下而上的构造过程。 # 符号栈 输入串: ( ( ( a , a ) , ^ , ( a ) ) , a ) # S ( T ) T , S a ( T ) S T , S T , S ( T ) S a ^ ( T ) S T , S a S a ( ( ( a S , T a S S ) T , ^ S T ( a S T ) S ) S T , a S T ) S 归约规则 句柄 a S→a S T→S a S→a T,S T→T , S (T) S→(T) S T→S ^ S→^ T,S T→T , S 3、(1)计算练习2文法G2的FIRSTVT和LASTVT。 G2: S→a | ^ | (T) T →T,S | S FIRSTVT(S)={ a, ∧,( } FIRSTVT(T)={, , a, ∧,(} LASTVT(S)

文档评论(0)

1亿VIP精品文档

相关文档