📄 1.2.1b.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='1.2.1.htm'"></img></td>
<td><img src="../images/next.gif" onmouseover="javascript:style.cursor='hand'" onclick="vbscript:window.location.href='1.3.0.htm'"></img></td>
</tr>
</table>
<br><br>
<table><tr><td>    </td>
<td class="content">
<p><font class="emphasize">错误处理</font> </p>
<p>编译过程中任何时刻都可能发现源程序的错误,例如: </p>
<p>·词法分析程序可能发现某单词的拼写错误等</p>
<p>·语法分析程序可能发现语法错误,如括号不配对等。 </p>
<p>·语义分析程序可能发现语义错误,如某运算符与其运算对象的类型不相容等。</p>
<p>·代码生成程序可能发现目标程序区超出了可允许的范围等等。 </p>
<p>·其它由于计算机的容量有限,编译程序的处理能力也受到限制而引起的错误,例如符号表太长而超出了规定的范围等等。</p>
<p>因此错误检查和处理是编译程序的一项很重要的任务。在编译程序的某一阶段发现错误之后,就将错误报告给错误处理程序。错误处理程序产生合适的诊断信息,以帮助程序员决定错误出现的准确位置,并且对源程序进行适当的恢复,以保证程序的一致性。当然要尽量使得这样的恢复与程序原来的意图一致,并从而使得编译过程能继续进行下去。这样,就可能在一次编译中检查出尽可能多的错误,使程序员减少上机编译的次数。</p>
<p>总之,图1.2给出了编译程序的各个组成部分及其相互之间的逻辑关系。一个编译程序不一定完全按照这样的顺序来安排,例如在许多编译程序中,词法分析程序、语法分析程序、语义分析程序和代码生成程序不是截然分开的,而是根据需要互相穿插进行的,用以提高编译程序本身的工作效率</p>
</td>
</tr></table>
<!--table>
<td><font class="yanshi">    观看演示 </font></td>
<td><font color=blue onmouseover="javascript:style.cursor='hand'" onclick="javascript:open('APPLET/compile.html','_blank','menu=no,toolbar=no,location=no,directories=no,status=no,scrollbars=yes,resizable=yes,copyhistory=no,left=100,top=100,width=800,height=600')">编译程序的各个组成部分</font></td>
<td><img src="../images/yanshi.gif"></img></td>
</table-->
<br>
<table align=right width=300>
<tr>
<td><img src="../images/previous.gif" onmouseover="javascript:style.cursor='hand'" onclick="vbscript:window.location.href='1.2.1.htm'"></img></td>
<td><img src="../images/next.gif" onmouseover="javascript:style.cursor='hand'" onclick="vbscript:window.location.href='1.3.0.htm'"></img></td>
</tr>
</table>
</BODY>
</html>
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -