Transcript 程式語言I
1-1
1-2
1-3
1-4
程式語言 I – VISUAL BASIC
Chapter 1
認知
了解電腦語言的意義、功能和種類。
能分辨何謂高階、低階語言,程式語言的編譯、執行方式。
能說出設計程式的步驟及細節。
技能
能寫出程式開發的詳細步驟。
能比較出組譯、直譯和編譯的差異和優缺點。
1-1 程式語言的功能
電腦程式(program)是指在電腦上依一定執行
順序執行的邏輯性指令。
使用程式語言撰寫的程式,又可以稱之為軟體
(software),用來控制電腦硬體(hardware)工作,
若依功能區分為系統軟體(system software)和
應用軟體(application software) 。
程式語言 I – VISUAL BASIC
1-2
軟體的分類
作業系統
系統軟體
程式處理器
工具程式
軟體
套裝軟體
應用軟體
自行開發軟體
程式語言 I – VISUAL BASIC
1-3
1-2 程式語言的種類
電腦程式語言依接近人類語言的程度可分為低階語
言(low-level language)與高階語言(high-level language)。
低階語言可以分為機器語言(machine language)與組合
語言(assembly language)兩種。
高階語言語法更接近人類的自然語言,要用直譯器
(interpreter)或編譯器(compiler)翻譯後才能執行。
高階語言分為程序導向語言(procedural-oriented
language)、物件導向語言(object-oriented language)和
應用軟體語言(application-software language) 。
程式語言 I – VISUAL BASIC
1-4
程式語言的分類
機械語言
低階語言
組合語言
程序導向語言
程式語言
物件導向語言
高階語言
應用軟體語言
程式語言 I – VISUAL BASIC
1-5
低階語言
機器語言
機器語言是電腦能直接了解而不用透過轉換的
語言,其內容是直接由0與1兩種符號所組成。
組合語言
組合語言是為改善機器語言撰寫的困難,以輔
助記憶符號(mnemonic code)將一些機器語言變
成有意義的程式碼。
程式語言 I – VISUAL BASIC
1-6
高階語言
程序導向語言
是一種依照指令邏輯順序執行的程式語言。
物件導向語言
以物件為主的程式設計語言,是把程式設計的
概念具體化、物件化,並以該物件的角度去分
析和解決問題。
應用軟體語言
是指某種應用軟體中的專屬控制語言,可以擴
充該應用軟體的功能。
程式語言 I – VISUAL BASIC
1-7
低階語言與高階語言比較
項目
高階語言
低階語言
程式撰寫
容易
困難
產生機器碼大小
較大
較小
產生機器碼執行速度
較慢
較快
高
低
程式除錯
容易
困難
程式維護
容易
困難
程式可讀性
程式語言 I – VISUAL BASIC
1-8
1-3 程式開發流程
一個程式的開發可以分為五個階段:
1. 分析問題(problem analysis)
2. 設計演算法(design algorithm)
3. 撰寫程式(coding)
4. 測試程式(program verification)
5. 編寫程式文件
程式語言 I – VISUAL BASIC
1-9
程式的開發階段
分析問題
設計演算法
撰寫程式
測試程式
編寫程式文件
程式語言 I – VISUAL BASIC
1-10
1-4 程式語言的翻譯
高階語言翻譯程式的過程中會進行語彙分析
(lexical analysis)和語法分析(syntax analysis),
語彙分析是指將程式中的字串分解成語彙基本
單元(token),再分析其屬性;而語法分析是指
分析程式中的每一個敘述,檢查是否合乎規定
的語法規則。
高階語言翻譯方式,分為組譯(assembly)、直
譯(interpret)與編譯(compile)。
程式語言 I – VISUAL BASIC
1-11
組譯
利用組譯程式(assembler,又稱為組譯器)將組
合語言翻譯成目的程式再經過連結程式,連結
為執行檔。
程式語言 I – VISUAL BASIC
1-12
直譯
直譯的方式是將高階程式語言所寫的程式逐行
翻譯,翻譯後立刻執行,翻譯的工作由直譯程
式(interpreter,又稱為直譯器)來負責。
程式語言 I – VISUAL BASIC
1-13
編譯
編譯的方式是將高階程式語言所寫的程式一次
全部翻譯成機器語言,使用的翻譯程式是編譯
程式(compiler,又稱編譯器)。
程式語言 I – VISUAL BASIC
1-14
組譯、直譯和編譯比較表
項目
組譯
直譯
編譯
產生目的程式
有
無
有
程式執行速度
快
慢
快
和機器的相關性
高
低
低
程式語言 I – VISUAL BASIC
1-15