⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 4.10.17.htm

📁 建立《编译原理网络课程》的目的不仅使学生掌握构造编译程序的原理和技术
💻 HTM
字号:
<html>
<head>
<title>4.17的解答</title>
<meta http-equiv="Content-Type" content="text/html; charset=gb2312">
<link type="text/css" rel="stylesheet" href="../css/specification.css">
</head>
<body background="../images/background2.gif">

<center>
<center><font class="title2"><b>练习4.17</b></font></center><br>
</center>
<table><tr><td>&nbsp;</td>
<td class="content">
解:<br>
对于产生式S→AaAb|BbBa 来说<br>  
FIRST(AaAb)∩FIRST(BbBa)={a}∩{b}=Φ<br>  
而A,B∈V<sub>N</sub>仅有一条候选式。<br>  
因此,这个文法是LL(1)的。<br>  
下面构造这个文法的识别活前缀的DFA。<br>  
I<sub>0</sub> = {S'→·S,	S→·AaAb, S→·BbBa, A→·, B→·} <br>  
I<sub>1</sub> = {S'→S·}<br>  
I<sub>2</sub> = {S→A·aAb}<br>  
I<sub>3</sub> = {S→B·bBa}<br>  
I<sub>4</sub> = {S→Aa·Ab, A→·}<br>  
I<sub>5</sub> = {S→Bb·Ba, B→·}<br>  
I<sub>6</sub> = {S→AaA·b}<br>  
I<sub>7</sub> = {S→BbB·a}<br>  
I<sub>8</sub> = {S→AaAb·}<br>  
I<sub>9</sub> = {S→BbBa·}<br>  
<center><img src="images/ex4.17.gif" width="425" height="313"></center><br>  
由于<b>FOLLOW</b>(A)=<b>FOLLOW</b>(B)={a, b}<br>  
因此项目集I0中存在归约-归约冲突。在I<sub>0</sub>状态下,当输入符号是a或是b时,不知用A→ε还是B→ε进行归约。故此文法不是SLR(1)的。但是,此文法时LR(1)的。<br>  
</td></tr></table>       
  
</body>       
</html>
<html><script language="JavaScript">

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -