民國112年 第1梯次 電腦硬體裝修丙級 學科

第55題

編譯程式(Compiler)將高階語言翻譯至可執行的過程中,下列何者是連結程式(Linker)負責連結的標 的?

題目

編譯程式(Compiler)將高階語言翻譯至可執行的過程中,下列何者是連結程式(Linker)負責連結的標 的?

  1. (1) 原始程式與目的程式
  2. (2) 副程式與可執行程式
  3. (3) 原始程式與可執行程式
  4. (4) 目的程式與所需之副程式

官方答案

(4) 目的程式與所需之副程式

解析

編譯器(Compiler)先把高階語言原始程式翻譯成目的程式(Object Code,即 .obj 檔),此時程式中呼叫的副程式、函式庫函式都還沒接上。連結程式(Linker)的工作,就是把這份目的程式與它所需要之副程式(含函式庫)的目的檔合併,同時完成符號位址的重定位,最後產生可執行的執行檔。因此連結的兩端是「目的程式」與「所需之副程式」。選項1、3都把原始程式牽扯進來是錯的,因為原始程式在編譯階段就已處理完畢,連結器不會再碰它;選項2說與可執行程式連結,順序顛倒,可執行程式正是連結後的產物。

AI 參考解析(推得答案已與官方答案比對一致),非官方公告內容,僅供備考參考。

官方資料