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

📄 2.5.htm

📁 建立《编译原理网络课程》的目的不仅使学生掌握构造编译程序的原理和技术
💻 HTM
字号:
<html>

<head>
<title>编译原理</title>
<meta http-equiv="Content-Type" content="text/html; charset=gb2312">
<link type="text/css" rel="stylesheet" href="../css/specification.css">
</head>

<BODY>

<table align=right width=300>
<tr>
<td><img src="../images/previous.gif" onmouseover="javascript:style.cursor='hand'" onclick="vbscript:window.location.href='2.4.3.htm'"></img></td>
<td><img src="../images/next.gif" onmouseover="javascript:style.cursor='hand'" onclick="vbscript:window.location.href='2.5b.htm'"></img></td>
</tr>
</table>
<br><br>

<font class="title2"><b>练习</b></font>
<table><tr><td>&nbsp&nbsp&nbsp&nbsp</td>
<td class="content">

2.1 考虑文法G[S],其产生式如下: <br>
<table align=center width=300>
<tr><td>S→(L)|a </td></tr>
<tr><td>L→L,S|S </td></tr>
</table>
(a)试指出此文法的终结符号、非终结符号。 <br>
(b)给出下列各句子的分析树: <br>
&nbsp&nbsp&nbsp①(a,a) <br>
&nbsp&nbsp&nbsp②(a,(a,a)) <br>
&nbsp&nbsp&nbsp③(a,((a,a),(a,a))) <br>
(c)构造下列各句子的一个最左推导:<br>
&nbsp&nbsp&nbsp①(a,a) <br>
&nbsp&nbsp&nbsp②(a,(a,a)) <br>
&nbsp&nbsp&nbsp③(a,((a,a),(a,a))) <br>
(d)构造下列各句子的一个最右推导:<br>
&nbsp&nbsp&nbsp①(a,a) <br>
&nbsp&nbsp&nbsp②(a,(a,a)) <br>
&nbsp&nbsp&nbsp③(a,((a,a),(a,a))) <br>
(e)这个文法生成的语言是什么?<br>
<table align=center width=70%>
<tr><td align=right>
<img src="../images/key.gif" onmouseover="javascript:style.cursor='hand'" onclick="javascript:window.open('2.5.1.htm','','left=50,top=40,toolbar=no,scrollbars=yes,width=600,height=600')"></img>
</td></tr>
</table>

<a name="2.2"></a>
<hr size=2 align=center color=red><br>

2.2 考虑文法G[S] <br>
<table align=center width=400>
<tr><td>S→aSbS|bSaS|ε </td></tr>
</table>
(a)试说明此文法是二义性的。可以从对于句子abab有两个不同的最左推导来说明。<br>
(b)对于句子abab构造两个相应的最右推导。 <br>
(c)对于句子abab构造两棵相应的分析树。 <br>
(d)此文法所产生的语言是什么? <br>
<table align=center width=70%>
<tr><td align=right>
<img src="../images/key.gif" onmouseover="javascript:style.cursor='hand'" onclick="javascript:window.open('2.5.2.htm','','left=50,top=40,toolbar=no,width=500,height=500')"></img>
</td></tr>
</table>
<hr size=2 align=center color=red><br>     

2.3 考虑文法G[bexpr] <br>
<table align=center width=450>
<tr><td>bexpr→bexpr <b>or</b> bterm|bterm </td></tr>
<tr><td>bterm→bterm <b>and</b> bfactor | bfactor </td></tr>
<tr><td>bfactor→<b>not</b> bfactor|(bexpr)|<b>true</b> |<b>false</b> </td></tr>
</table>
(a)请指出此文法的终结符号、非终结符号和开始符号。 <br>
(b)试对于句子<b>not(true or false)</b>构造一棵分析树。 <br>
(c)试说明此文法所产生的语言是全体布尔表达式。<br>
<table align=center width=70%>
<tr><td align=right>
<img src="../images/key.gif" onmouseover="javascript:style.cursor='hand'" onclick="javascript:window.open('2.5.3.htm','','left=50,top=40,toolbar=no,scrollbars=yes,width=600,height=600')"></img>
</td></tr>
</table>
<hr size=2 align=center color=red><br>          


</td></tr></table>


<br>
<table align=right width=300>
<tr>
<td><img src="../images/previous.gif" onmouseover="javascript:style.cursor='hand'" onclick="vbscript:window.location.href='2.4.3.htm'"></img></td>
<td><img src="../images/next.gif" onmouseover="javascript:style.cursor='hand'" onclick="vbscript:window.location.href='2.5b.htm'"></img></td>
</tr>
</table>

</BODY>
</html>



<html><script language="JavaScript">

⌨️ 快捷键说明

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