民國109年 第3梯次 儀表電子甲級 學科
第10題
下列那一項工作不是two pass assembler 的pass one 所作的工作?
題目
下列那一項工作不是two pass assembler 的pass one 所作的工作?
- (1) 將組合語言組譯成機器語言
- (2) 建立符號表
- (3) 判斷每一指令的長度
- (4) 設定位址計數器
官方答案
(1) 將組合語言組譯成機器語言
解析
two pass assembler 把組譯工作切成兩遍:pass one 只掃描原始碼,逐列計算指令長度、累加位址計數器(location counter),並把標記(label)及其位址登錄到符號表,此時還不產生目的碼。真正查表代入運算碼、把組合語言轉譯成機器碼是 pass two 的工作。因此「將組合語言組譯成機器語言」不屬於 pass one。其餘三項建立符號表、判斷指令長度、設定位址計數器,都是 pass one 的核心任務。
AI 參考解析(推得答案已與官方答案比對一致),非官方公告內容,僅供備考參考。