?? page51.html
字號:
<html>
<head>
<meta http-equiv=Content-Type content="text/html; charset=gb2312">
<title>第4章 奇妙的聲音</title>
</head>
<body>
<style type="text/css">
body {
background-color: #c0c0c0;
}
table {
background-color: #c0c0c0;
line-height: 24px;
}
</style>
<!導航條>
<p><a href="content1.html">目錄</a> <a href="page50.html">上一頁</a> <a href="page52.html">下一頁</a> <a href="page80.html">下一章</a></p>
<table border=0 align="center" width=800 frame="box" rules="none">
<!標尺行>
<tr>
<td width=3%></td><td width=6%></td><td width=1%></td> <!左側空白>
<td width=5%></td><td width=5%></td><td width=5%></td><td width=5%></td><td width=5%></td><td width=5%></td><td width=5%></td><td width=5%></td>
<td width=5%></td><td width=5%></td><td width=5%></td><td width=5%></td><td width=5%></td><td width=5%></td><td width=5%></td><td width=5%></td>
<td width=1%></td><td width=6%></td><td width=3%></td> <!右側空白>
</tr>
<!頁眉行>
<tr height=60 valign="bottom">
<td></td><td></td><td></td>
<td colspan=6><img src="icons/flag.gif"></td><td colspan=4></td><td colspan=6 align="right">第4章 奇妙的聲音</td> <!章節名>
<td></td><td>-51-</td><td></td> <!頁碼>
</tr>
<!頁眉線>
<tr valign="top">
<td></td><td colspan=20><hr></td><td></td>
</tr>
<!正文>
<font face="宋體" lang="ZH-CN" size=3>
<tr height=20><td colspan=22></td></tr> <!頂部空白>
<tr>
<td></td><td></td> <!左邊距>
<td colspan=18>
得到正確的目標文件后,我們就可以用連接程序(LINK或TLINK)將其轉換成可執行文件(.COM或.EXE文件),使用LINK.EXE的方法是:
</td>
<td></td><td></td> <!右邊距>
</tr>
<tr>
<td></td><td></td> <!左邊距>
<td colspan=18>
C:\ASM\>LINK[Enter]<br>
<br>
Microsoft (R) Overlay Linker Version 3.60<br>
Copyright (C) Microsoft Corp 1983-1987. All rights reserved.<br>
<br>
Object Modules [.OBJ]: prog7[Enter]<br>
Run File [PROG7.EXE]: [Enter]<br>
List File [NUL.MAP]: [Enter]<br>
Libraries [.LIB]: [Enter]<br>
LINK : warning L4021: no stack segment
</td>
<td></td><td></td><!右邊距>
</tr>
<tr>
<td></td><td></td> <!左邊距>
<td colspan=18>
".MAP"文件是連接程序生成的圖文件,這個文件默認為不輸出。".LIB"文件是子程序庫文件,如果程序中某個子程序來源于一些現成的子程序庫,則在連接時應明確指出庫文件名。至于LINK程序產生的"Warning L4021:"是因為程序中沒有明確定義堆棧段的緣故,這并不影響最續生成的可執行程序。<br>
使用TLINK(Turbo LINK)的方法是:
</td>
<td></td><td></td> <!右邊距>
</tr>
<tr>
<td></td><td></td> <!左邊距>
<td colspan=18>
C:\ASM\>tlink prog7/t[Enter]<br>
Turbo Link Version 2.0 Copyright (c) 1987, 1988 Borland International<br>
Warning: no stack
</td>
<td></td><td></td> <!右邊距>
</tr>
<tr>
<td></td><td></td> <!左邊距>
<td colspan=18>
由于程序中沒有定義堆棧段,因此TLINK同樣出現了一個"Warning",這也沒有關系。不過"/T"參數只能在這里使用,因為PROG7可以轉成".COM"類的可執行程序。對于那些具有多個段的程序因其只能以.EXE的形式存在,所以不能用"/T"參數。<br>
經過這一步驟,我們便得到一個名PROG7.COM的文件。運行此程序,即可從喇叭中聽到1000Hz的聲音。<br>
有時候程序中可能有邏輯錯誤,這需要我們用DEBUG將其排除掉,將一個可執行文件調入DEBUG中的方法在前面已經應用過:
</td>
<td></td><td></td> <!右邊距>
</tr>
<tr>
<td></td><td></td> <!左邊距>
<td colspan=18><font size=5>
C:\ASM\>DEBUG PROG7.COM[Enter]
</font></td>
<td></td><td></td> <!右邊距>
</tr>
<tr>
<td></td><td></td> <!左邊距>
<td colspan=6><hr></td>
<td colspan=6 align="center"><font face="楷體_GB2312" size=5>
<i>或者這樣操作:</i>
</font></td>
<td colspan=6><hr></td>
<td></td><td></td> <!右邊距>
</tr>
<tr>
<td></td><td></td> <!左邊距>
<td colspan=9 align="center">
L(LOAD)命令的作用是裝入一<br>個文件,文件名由N命令給出。
</td>
<td colspan=9><font size=5>
C:\ASM\>DEBUG[Enter]<br>
-NPROG7.COM[Enter]<br>
-L[Enter]
</font></td>
<td></td><td></td> <!右邊距>
</tr>
<tr>
<td></td><td></td> <!左邊距>
<td colspan=18>
文件裝入后即可用T、P命令跟蹤執行或用U命令反匯編,下面是PROG7的反匯編形式:
</td>
<td></td><td></td> <!右邊距>
</tr>
</font>
<!頁腳線>
<tr valign="top">
<td></td><td colspan=20><hr></td><td></td>
</tr>
<!頁腳>
<tr height=60 valign="top">
<td></td><td></td>
<td colspan=9><i>Copyright © 2004-2005 <a href="mailto:webmaster@nucstorm.com">Chunk Lee</a></i></td>
<td colspan=9 align="right"><i><a href="http://www.nucstorm.com" target="_top">www.nucstorm.com</a></i></td>
<td></td><td></td>
</tr>
</table>
<!導航條>
<p align="right"><a href="content1.html">目錄</a> <a href="page50.html">上一頁</a> <a href="page52.html">下一頁</a> <a href="page80.html">下一章</a></p>
</body>
</html>
?? 快捷鍵說明
復制代碼
Ctrl + C
搜索代碼
Ctrl + F
全屏模式
F11
切換主題
Ctrl + Shift + D
顯示快捷鍵
?
增大字號
Ctrl + =
減小字號
Ctrl + -