敘述錯誤的是哪一項:
A. 高階語言都是用接近人們習慣的自然語言和數學語言作為語言的表達形式。
B. 電腦只能處理由 0 和 1 的代碼構成的二進制指令或數據
C. C 語言源程序經過 C 語言編譯程序編譯之後生成一個後綴為 .exe 的二進制文件
D. 每一種高階語言都有他對應的編譯程序
| 選項 | 正確性 | 解析 |
|---|---|---|
| A | ❌ 錯誤 | 「高階語音」為錯別字,應為「高階語言」。此外「接近自然語言」描述過於籠統,部分高階語言 (如 APL、Prolog) 語法極不似自然語言。 |
| B | ✅ 正確 | CPU 確實只能執行二進制機器碼 (0/1)。 |
| C | ❌ 錯誤 | 編譯 (Compile) 僅生成目標檔 .obj (或 .o),需經連結 (Link) 才生成可執行檔 .exe。 |
| D | ✅ 正確 | 每種高階語言至少有一套對應的編譯器/直譯器工具鏈。 |
source.c
│
▼ 預處理 (Preprocess) → source.i (展開 #include、#define、條件編譯)
│
▼ 編譯 (Compile) → source.s (組合語言) → source.obj (目標檔/機器碼+重定位資訊)
│
▼ 連結 (Link) → source.exe (可執行檔,解析外部符號、結合庫函數)
│
▼ 載入 (Load) → 記憶體映像
│
▼ 執行 (Execute)