📄 1.3.0.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.1b.htm'"></img></td>
<td><img src="../images/next.gif" onmouseover="javascript:style.cursor='hand'" onclick="vbscript:window.location.href='1.3.0b.htm'"></img></td>
</tr>
</table>
<br><br>
<font class="title2"><b>1.3 有关编译程序的设计与实现
</b></font>
<table><tr><td>    </td>
<td class="content">
<p>
一个编译程序的设计与实现,不仅要考虑源语言和目标语言,还要考虑实现此编译程序的实现语言。一般常用“T”形图来表示一个编译程序的这三个方面。“T ”形图的左上角表示源语言,右上角表示目标语言,而其底部表示实现语言。例如,对一个用Z语言实现的,从源语言X到目标语言Y的编译程序,可用图1.3表示,此编译程序可记作C<sub>z</sub><sup>xy</sup>。“T”形图以下简称T图。 </p>
</td></tr></table>
<p>
<center><img src="images/1.3.gif"></center> <br>
<center class="content">图1.3 编译程序C<sub>Z</sub><sup>XY</sup></center></p>
<table><tr><td>    </td>
<td class="content">
<p>
设计一个编译程序必须认真考虑上面三种语言的性质,因为它们对编译程序的结构和所采用的具体策略有很大影响。源语言的定义往往决定着编译程序的结构。目标语言和目标机器的性质决定着源语言到目标语言的映射和代码生成策略。另外,实现语言的性质、程序设计的环境及可用的软件工具对编译程序的实现也是很重要的。为此,一般说来,不完全采用低级语言作为实现语言。试看一个例子:假设有一个新语言L,我们要在机器A和B上实现它。可以分以下几步来进行。假设A,B分别代表两个机器的汇编语言或机器代码。</p>
<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.1b.htm'"></img></td>
<td><img src="../images/next.gif" onmouseover="javascript:style.cursor='hand'" onclick="vbscript:window.location.href='1.3.0b.htm'"></img></td>
</tr>
</table>
</BODY>
</html>
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -