长安大学《编译原理》题解2014.pdfVIP

  • 70
  • 0
  • 约7.16千字
  • 约 4页
  • 2018-01-31 发布于浙江
  • 举报
由偶数个0 和偶数个1 构成的所有0 和1 的串。 [解答] 由题目分析可知,一个符号串由0 和1 组成,则0 和1 的个数只能有四种情况:  偶数个0 和偶数个1 (用状态0 表示);  偶数个0 和奇数个1 (用状态1 表示);  奇数个0 和偶数个1 (用状态2 表示);  奇数个0 和奇数个1 (用状态3 表示); 所以,  状态0 (偶数个0 和偶数个1)读入1,则0 和1 的数目变为:偶数个0 和奇数个1 (状态1)  状态0 (偶数个0 和偶数个1)读入0,则0 和1 的数目变为:奇数个0 和偶数个1 (状态2 )  状态1 (偶数个0 和奇数个1)读入1,则0 和1 的数目变为:偶数个0 和偶数个1 (状态0)  状态1 (偶数个0 和奇数个1)读入0,则0 和1 的数目变为:奇数个0 和奇数个1 (状态3)  状态2 (奇数个0 和偶数个1)读入1,则0 和1 的数目变为:奇数个0 和奇数个1 (状态3)  状态2 (奇数个0 和偶数个1)读入0,则0 和1 的数目变为:偶数个0 和偶数个1 (状态0)  状态3 (奇数个0 和奇数个1)读入1,则0 和1 的数目变为:奇数个0 和偶数个1 (状态2 )  状态3 (奇数个0 和奇数个1)读入0,则0 和1 的数目变为:偶数个0 和奇数个1 (状态1) 因为,所求为由偶数个0 和偶数个 1 构成的所有0 和 1 的串,故状态0 既为 初始状态又为终结状态,其状态转换图如下所示: 1 0 1 1 0 0 0 0 1 2 3 1 由此可以写出其正规文法为: S0 → 1S1 | 0S2 | ε S1 → 1S0 | 0S3 | 1 S2 → 1S3 | 0S0 | 0 S3 → 1S2 | 0S1 在不考虑S0 → ε 产生式的情况下,可以将文法变形为: S0 = 1S1 + 0S2 S1 = 1S0 + 0S3 + 1 S2 = 1S3 + 0S0 + 0 S3 = 1S2 + 0S1 所以: S0 = (00|11) S0 + (01|10) S3 + 11 + 00 (1) S3 = (00|11) S3 + (01|10) S0 + 01 + 10 (2) 解(2)式得: S3 = (00|11)* ((01|10) S0 + (01|10)) 代入(1)式得: S0 = (00|11) S0 + (01|10) (00|11)*((01|10) S0 + (01|10)) + (00|11) = S0 = ((00|

文档评论(0)

1亿VIP精品文档

相关文档