農會 資訊管理類程式設計108 年第 11 題單選題
下列何者能將相關的程式的OBJ 連結成為一個執行檔?
Acompiler
Binterpreter
Clinker正確答案
Dassembler
C正確答案
連結器(Linker)負責將多個OBJ目的檔與系統函式庫結合,產生最終的可執行檔。
為什麼答案是 C
Linker(連結器)專門負責將一個或多個OBJ檔以及所需的函式庫連結,打包成最終的可執行檔。
考點:編譯器功能考點:直譯器功能考點:連結器功能考點:組譯器功能
載入中…
完整詳解
Pro · 無限重點 連結器(Linker)負責將多個OBJ目的檔與系統函式庫結合,產生最終的可執行檔。
看到「OBJ連結成執行檔」秒選 Linker。編譯產OBJ,組譯轉組合語言,直譯不產檔。
逐選項分析
A編譯器功能✕
Compiler(編譯器)負責將高階語言原始碼轉換為OBJ目的碼,但不負責將多個檔案連結起來。
B直譯器功能✕
Interpreter(直譯器)會逐行讀取原始碼並直接執行,不會產生OBJ檔或獨立的可執行檔。
C連結器功能✓ 正確
Linker(連結器)專門負責將一個或多個OBJ檔以及所需的函式庫連結,打包成最終的可執行檔。
D組譯器功能✕
Assembler(組譯器)負責將低階的組合語言轉換為機器碼(OBJ檔),同樣不具備連結多個檔案的功能。
程式語言處理工具對照表
| 工具名稱 | 中文 | 主要功能 | 輸入/輸出 |
|---|
| Compiler | 編譯器 | 高階語言轉機器碼/目的碼 | 原始碼 -> OBJ |
| Assembler | 組譯器 | 組合語言轉機器碼 | 組合語言 -> OBJ |
| Linker | 連結器 | 結合多個OBJ與函式庫 | OBJ -> 執行檔 |
| Interpreter | 直譯器 | 逐行翻譯並執行 | 原始碼 -> 直接執行 |
考生極易將「編譯(Compile)」與「連結(Link)」的階段混淆。編譯器只負責將單一原始碼轉為OBJ,必須靠連結器才能將多個OBJ與系統函式庫打包成最終執行檔。