作业二:理解文法和语文
1.理解符号串与集合运算。 L={A,B, … ,Z,a,b, … ,z} D={0,1, … ,9} 说明下表示的含义: LUD LD L4 L* D+ L(LUD)* 答:LUD:即为L集合与D集合的并集合,即L={A,B, … ,Z,a,b, … ,z,0,1, … ,9} LD : {xy | x∈L且y∈D} L4: L集合的4位组合即{AAAA, AAAB, ..., zzzz} L*: 集合L集合的闭包 D+: 表示D集合的正闭包 L(LUD)* :L并D的正闭包与L的乘积,即{xy | x∈L且y∈(LUD)*} 2.文法G(Z):Z->aZb|ab定义的是什么样的语言? 答:由Z->aZb|ab可得Z->aZb->aaZbb->aaabbb 所以:L(G) = {anbn | n > 1} 3.写出教材22页例2.2中标识符的文法四元组形式(VN,NT,P,S)。 I-> L-> D-> 答: I-> L|IL|ID L-> a|b|c|...|x|y|z D-> 0|1|2|...|8|9 4.写出下列表达式的最左推导、最右推导。 G(E): E=> E + T | T T=>T * F | F F=>(E)| i i*i+i i+i*i i+(i+i) 注意观察最左和最右推导过程的不同。 答: i*i+i 最左推导:E => E + T => T+T => T