本文記錄依照王爽《匯編語言》綜合研究一的指導,在虛擬機 DOS 環境中,從完整 TC2.0 安裝目錄中剝離出僅含核心編譯鏈接功能的極簡環境,並驗證各檔案作用的完整過程。
MINIC 目錄TC.EXE 至 MINICTC.EXE,清除所有目錄設置 (Options → Directories 全清空)SIMPLE.CSIMPLE.OBJ 成功Unable to open input file 'C0S.OBJ'依據報錯提示,依次從原 TC 目錄複製以下檔案至 MINIC:
C0S.OBJ - 啟動代碼 (程式入口、堆疊初始化)EMU.LIB - 浮點模擬庫 (無 FPU 時軟體模擬浮點運算)MATHS.LIB - 數學函數庫 (sin, cos, sqrt 等)GRAPHICS.LIB - 圖形庫 (BGI 圖形函數)CS.LIB - 標準 C 運行庫 (printf, malloc, strcpy 等核心函數)補全後再次編譯鏈接,成功生成 SIMPLE.EXE 並正常運行。
| 檔案 | 作用 | 是否必需 |
|---|---|---|
TC.EXE | 編譯器驅動程式 (內含預處理、編譯、調用鏈接器) | 是 |
TLINK.EXE | 連結器 (由 TC.EXE 自動調用) | 是 |
C0S.OBJ | Small Model 啟動模組 | 是 |
CS.LIB | 標準 C 庫 (I/O、字符串、記憶體、進程控制) | 是 |
EMU.LIB | 浮點模擬 (無 8087/287/387 時必需) | 視硬體而定 |
MATHS.LIB | 數學庫函數 | 用到數學函數時必需 |
GRAPHICS.LIB | BGI 圖形庫 | 用到圖形函數時必需 |
INCLUDE/ | 標準頭文件 (stdio.h 等) | 編譯期必需,運行期不需 |
實驗證明:TC.EXE 不會 自動搜尋 A:\ (軟盤根目錄) 作為庫文件路徑。若未在 Options→Directories 設定 Library Directories,且庫文件不在 TC.EXE 所在目錄,鏈接將失敗。這驗證了書中將文件複製到 D:\TC2.0 而非依賴當前目錄的做法。
.EXE (如 TURBO.EXE IDE、TD.EXE 調試器、MAKE.EXE、GREP.EXE 等) 的具體定位與關係TLIB.EXE 庫管理工具的使用場景