1
CHAPTER
09
程式語言
9-1
程式語言發展史
9-2
資料型態
9-3
程式指令
9-4
程序定義和使用

2
An Introduction to Computer Science
Chapter
09
9-1 程式語言發展史
FORTRAN
LISP
COBOL
BASIC
PASCAL
C
PROLOG
ADA
C++
JAVA

3
An Introduction to Computer Science
Chapter
09
9-1 程式語言發展史
電腦只能接受 0 與 1 組成的
機器語言
(machine lan
guage) 。
這些機器語言所代表的意義,通常是做些簡單的加
減運算,或是將特定的值指定給
暫存器
(registe
r) 。
組合語言
(assembly language) 把一個以 0 、 1 組
成的字串用較容易理解的符號表示,譬如相加之指
令以機器語言表示為 01011010 ,而在組合語言則
以 ADD 來表示。

4
An Introduction to Computer Science
Chapter
09
9-1 程式語言發展史
組合語言撰寫出來的程式,須透過
組合器
(assembler) ,
轉換成機器語言,才能為中央處理器接受。
組合語言缺點:
由於組合語言是直接反應機器語言的指令,必須根據每個中
央處理器的特性來設計,所以
不同規格的電腦就各自有自己
的組合語言
,如此造成程式設計師學習上的困難,且寫出來
的程式也只能在特定電腦上執行。
組合語言只具備有簡單的指令,所以寫出來的程式通常不具
結構性,
程式冗長且難以閱讀
,也就是我們雖然能夠理解各
個指令的意義,但是整個程式所欲達到的功能卻不易理解。

5
An Introduction to Computer Science
Chapter
09
9-1 程式語言發展史
組 合 語 言 稱 作
低 階 語 言
(low level languag
e) ,表示組合語言寫出來的程式
可讀性
(readab
ility) 很低,同時這也是
高階語言
(high level
language) 被發展設計出來的原因。
高階語言如 C 語言,寫出來的程式,比起組合語
言寫出來的程式,更容易為一般人所理解。
高階語言和機器的特性並沒有很密切的對應,所
以較具有
可攜性
(portability) 。

6
An Introduction to Computer Science
Chapter
09
9-1 程式語言發展史
高階語言寫出來的程式還要經過
編譯
(compile)
的步驟才能執行。
整個編譯的過程如下圖所示:
高階程式編譯和執行流程

7
An Introduction to Computer Science
Chapter
06
程式語言發展年表
該圖的左邊是年代,而
箭頭代表不同時間推出
的程式語言的前後影響
性,可以看到第一個推
出的高階程式語言是
FORTRAN
, 而 在 之
後的
40
幾年仍然有相
當多基於不同設計理念
的程式語言推出,最近
一個最具有影響力的是
JAVA
。
