複選題
12.
下列何種屬於第三代的電腦程式語言?
(A) Machine Language
(B) Assembly
(C) C
(D) Java
(E) Fortran
統計: A(8), B(15), C(163), D(163), E(132) #3145752
詳解 (共 3 筆)
【解題思路】
要先抓住核心觀念:
第三代語言(3GL, Third Generation Language)=高階語言(High-Level Language)
高階語言的特色:
-
接近自然語言
-
不用直接操作暫存器
-
編譯器負責翻譯
-
與硬體較無關
-
代表語言:C、C++、Java、Fortran、Python…等
而非第三代的語言:
-
第一代(1GL)=機器語言(Machine Language)
-
第二代(2GL)=組合語言(Assembly Language)
所以要選出「高階語言」即可。
依分類:
| 世代 | 語言 | 本題選項 |
|---|---|---|
| 第一代(1GL) | Machine Language | (A) |
| 第二代(2GL) | Assembly | (B) |
| 第三代(3GL) | C、Java、Fortran | (C)(D)(E) |
因此答案:C、D、E
【為什麼其他選項不正確(逐一破題)】
(A) Machine Language
→ 1GL(機器碼),不是 3GL。
(B) Assembly
→ 2GL(組合語言),比機器碼高一點,但仍不是第三代語言。
(C) C
→ 正確,典型第三代語言。
(D) Java
→ 正確,屬於高階語言,也是 3GL 代表語言。
(E) Fortran
→ 正確,最早的高階語言之一,屬第三代語言。
【延伸知識】
常見語言世代分類(必背):
1GL:Machine Language(0 跟 1)
2GL:Assembly(mnemonic)
3GL:High-Level Languages(C、Java、Python、Fortran…)
4GL:SQL、MATLAB、R(更接近自然語言、宣告式)
5GL:AI、邏輯推理語言(Prolog)
考試最常考:
-
C、Java、Fortran、Pascal、C++ 都是 3GL
-
千萬不要把「Java 是物件導向」誤以為是第四代語言(它仍屬 3GL)
【記憶技巧】
一句口訣:
1 機、2 組、3 高階 → C、Java、Fortran 全部都第三代。
【常見錯誤】
-
把物件導向語言(Java)誤以為是第四代 → 錯
-
把 Fortran 認為是「太老就不是第三代」→ 錯,它是最早的 3GL
-
把 Assembly 誤當成 C 的前身 → 兩者不在同一世代