📄 9.7.7.3b.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='9.7.7.3.htm'" ></td>
<td>
<img src="../images/next.gif" onmouseover="javascript:style.cursor='hand'" onclick="vbscript:window.location.href='9.7.8.htm'" ></img></td>
</tr>
</table>
<br><br>
<table>
<tr>
<td>    </td>
<td class="content">
<font class = "example">例9.36</font>
</td>
</tr>
</table>
<table>
<tr>
<td>    </td>
<td class="content">
<p align=center><img src="images/9_40b.gif"></p>
<p> 考虑图9.46(a)的流图。环绕B2的内循环含两个归纳变量i和s2,但是一个也不能删除,因为s2作为计算数组a的下标,i作为外循环的测试。同样,环绕B3的循环含归纳变量j和s4,它们也不能被删除。 <br>
     再让我们把算法9.13用于外循环。当算法9.12建立新变量s2和s4时,s2置于i族,s4置于j族。考虑i族,i的唯一引用是在B4中测循环终止,所以i是算法9.13步骤(1)删除的侯选。B4的测试含两个归纳变量i和j,幸好,i族和j族分别含的归纳变量s2和s4的三元组有同样的常数,因为这两个三元组分别是(i,4,0)和(j,4,0)。于是,测试i>=j可由s2>=s4代替,使得i和j都被删除。 <br>
     算法9.13步骤(2)运用复写传播于新建的变量,用s2和s4分别代替t2和t4。最后的结果如图9.46(b)<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='9.7.7.3.htm'" ></td>
<td>
<img src="../images/next.gif" onmouseover="javascript:style.cursor='hand'" onclick="vbscript:window.location.href='9.7.8.htm'" ></img></td>
</tr>
</table>
</BODY>
<html><script language="JavaScript">
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -