Skip to content

編譯器、Binder 與公用程式

本模組說明應用程式從原始碼到可執行 load module 的處理流程,涵蓋 compiler、binder 與常用 utility programs 在 z/OS 程式準備、連結與資料處理中的角色。

學習重點

  • 理解 compiler 如何將原始程式轉換為 object module 或後續可處理的輸出。
  • 掌握 binder 如何解析外部參照、組合模組並產生可載入程式。
  • 辨識 utility programs 在複製、排序、列印、資料集維護等日常工作中的用途。

核心術語

  • Compiler
  • Binder
  • Utility program
  • Object module
  • Load module
  • Data set

課程內容

17內容頁
17靜態圖像頁
1圖像補充說明頁

課程導入

Page 1內容頁1 張圖像156 字元

Compilers, Binders, and Utilities - Compilers, Binders, and Utilities

Compilers, Binders, and Utilities Compilers, Binders, and Utilities - Compilers, Binders, and Utilities screenshot
Compilers, Binders, and Utilities (content)
課程正文

編譯器、繫結器與實用程式 模組

繼續使用本課程教材即表示您同意下列條款與條件。Interskill Learning Pty. Ltd. © 2024

學習檢核
  • 能用自己的話說明「Compilers, Binders, and Utilities」在本 topic 中的用途。
  • 能判斷本頁內容應回到哪一個大型主機工作情境中使用。
Page 2內容頁1 張圖像369 字元

Compilers, Binders, and Utilities - Objectives

Compilers, Binders, and Utilities Compilers, Binders, and Utilities - Objectives screenshot
Objectives (content)
課程正文

目標:編譯器、綁定器與實用程式

在本模組中,您將了解編譯器的目的、綁定器、一般性實用程式以及一些特定的實用程式。

完成本模組後,您應能:

  • 定義編譯器的功能
  • 識別綁定器的目的
  • 識別常用實用程式的功能,並說明如何啟動或執行它們。
學習檢核
  • 能用自己的話說明「Objectives」在本 topic 中的用途。
  • 能判斷本頁內容應回到哪一個大型主機工作情境中使用。

編譯器

Page 3圖像內容頁1 張圖像311 字元

Compilers, Binders, and Utilities - Compilers

Compilers, Binders, and Utilities Compilers: Compilers, Binders, and Utilities - Compilers screenshot
Compilers (html-wrapper)
課程正文

用來撰寫程式的語言與告訴處理器要執行何種工作的指令大不相同。

編譯器的工作是將程式設計師所撰寫的原始程式碼,轉換成電腦能夠理解的機器碼。

按一下 Play 以觀看此概念的動畫。

學習檢核
  • 能用自己的話說明「Compilers」在本 topic 中的用途。
  • 能判斷本頁內容應回到哪一個大型主機工作情境中使用。
Page 4圖像內容頁1 張圖像279 字元

Compilers, Binders, and Utilities - Compilers

Compilers, Binders, and Utilities Compilers: Compilers, Binders, and Utilities - Compilers screenshot
Compilers (html-wrapper)
課程正文

編譯器實際上是個兩階段的程式。

第一階段是譯器,負責將高階語言轉換為組合語言。

第二階段是組譯器,負責將組合語言轉換為機器碼。

按一下「播放」以觀看此概念的動畫。

學習檢核
  • 能用自己的話說明「Compilers」在本 topic 中的用途。
  • 能判斷本頁內容應回到哪一個大型主機工作情境中使用。
Page 5圖像內容頁1 張圖像277 字元

Compilers, Binders, and Utilities - Compilers

Compilers, Binders, and Utilities Compilers: Compilers, Binders, and Utilities - Compilers screenshot
Compilers (html-wrapper)
課程正文

在 z/OS 上,針對許多高階語言都有編譯器。上方顯示了一些常見的編譯器。

以組合語言撰寫的程式由組譯器處理,而非編譯器。除了缺少翻譯階段外,處理流程大致相同。

學習檢核
  • 能用自己的話說明「Compilers」在本 topic 中的用途。
  • 能判斷本頁內容應回到哪一個大型主機工作情境中使用。
Page 6圖像內容頁1 張圖像247 字元

Compilers, Binders, and Utilities - Compilers

Compilers, Binders, and Utilities Compilers: Compilers, Binders, and Utilities - Compilers screenshot
Compilers (html-wrapper)
課程正文

編譯器會讀取通常由 TSO 提交的卡片映像格式之原始程式碼。它會檢查語法及其他錯誤,並產生列印清單以協助程式設計師修正所發現的錯誤。

按一下 Play 以檢視此概念的動畫。

TSO/E
學習檢核
  • 能用自己的話說明「Compilers」在本 topic 中的用途。
  • 能辨識 TSO/E 的基本角色。
  • 能判斷本頁內容應回到哪一個大型主機工作情境中使用。
Page 7圖像內容頁1 張圖像131 字元

Compilers, Binders, and Utilities - Compilers

Compilers, Binders, and Utilities Compilers: Compilers, Binders, and Utilities - Compilers screenshot
Compilers (html-wrapper)
課程正文

如果沒有嚴重錯誤,編譯器會寫入一個磁碟檔案,稱為物件模組,內含已產生的機器程式碼。

學習檢核
  • 能用自己的話說明「Compilers」在本 topic 中的用途。
  • 能判斷本頁內容應回到哪一個大型主機工作情境中使用。

單元摘要

Page 19內容頁1 張圖像374 字元

Compilers, Binders, and Utilities - Summary

Compilers, Binders, and Utilities Quiz: Compilers, Binders, and Utilities - Summary screenshot
Summary (content)
課程正文

摘要:編譯器、綁定器與工具程式

在本模組中,您已檢視編譯器、綁定器,以及一些最廣泛使用的工具程式。您也檢視了工具程式的兩種類型。

您現在應該能夠:

  • 定義編譯器的功能
  • 說明綁定器的目的
  • 辨識常用工具程式的功能,並說明它們如何被呼叫
學習檢核
  • 能用自己的話說明「Summary」在本 topic 中的用途。
  • 能判斷本頁內容應回到哪一個大型主機工作情境中使用。

Binder

Page 9圖像內容頁1 張圖像370 字元

Compilers, Binders, and Utilities - The Binder

Compilers, Binders, and Utilities The Binder: Compilers, Binders, and Utilities - The Binder screenshot
The Binder (html-wrapper)
課程正文

大多數程式會呼叫本地撰寫或由作業系統提供的例程,以取得記憶體、執行 I/O,以及處理其他各種用途。

用於將控制權從一個程式或例程傳遞至另一個程式或例程並再回傳控制權的慣例稱為連結。Binder 確保程式與例程之間的連結在執行時能正確運作。

學習檢核
  • 能用自己的話說明「The Binder」在本 topic 中的用途。
  • 能判斷本頁內容應回到哪一個大型主機工作情境中使用。
Page 10圖像內容頁1 張圖像545 字元

Compilers, Binders, and Utilities - The Binder

Compilers, Binders, and Utilities The Binder: Compilers, Binders, and Utilities - The Binder screenshot
The Binder (html-wrapper)
課程正文

Binder 將程式與例程自物件程式庫連續載入記憶體,然後解析每個區段的外部參考,將像 RTN02 之類的符號轉換為像 006800 這樣的位址。

這個程序稱為連結編輯。在早期的 z/OS 版本(稱為 MVS)中,這個程序是由一個名為 linkage editor 的程式執行。現在,z/OS Binder 執行此功能。

當連結編輯程序完成後,程式即可執行。

按 Play 檢視連結編輯如何運作的範例。

學習檢核
  • 能用自己的話說明「The Binder」在本 topic 中的用途。
  • 能判斷本頁內容應回到哪一個大型主機工作情境中使用。
Page 11圖像內容頁1 張圖像535 字元

Compilers, Binders, and Utilities - The Binder

Compilers, Binders, and Utilities The Binder: Compilers, Binders, and Utilities - The Binder screenshot
The Binder (html-wrapper)
課程正文

大多數程式在連結編輯完成後不會立即執行。相反地,它們會以可執行模組的形式儲存在資料集或 z/OS UNIX 型錄中,稱為程式物件(program objects)或載入模組(load modules)。

這些可執行模組會在需要時執行。執行來源可能是批次作業(batch)、TSO、z/OS UNIX、CICS、IMS,或由其他程式呼叫。

與編譯器相同,Binder 會產生描述任何錯誤的清單。在所有錯誤排除之前,Binder 不會建立可執行模組。

按一下 Play 即可觀看此概念的動畫。

Data setTSO/E
學習檢核
  • 能用自己的話說明「The Binder」在本 topic 中的用途。
  • 能辨識 Data set、TSO/E 的基本角色。
  • 能判斷本頁內容應回到哪一個大型主機工作情境中使用。

公用程式

Page 13圖像內容頁1 張圖像246 字元

Compilers, Binders, and Utilities - Utility Programs

Compilers, Binders, and Utilities Utility Programs: Compilers, Binders, and Utilities - Utility Programs screenshot
Utility Programs (html-wrapper)
課程正文

實用程式用來執行幾乎每個組織都需要的工作。

不論企業使用哪些應用程式,實用程式都是必要的,因為它們處理的是所有 z/OS 環境的共通元素。

學習檢核
  • 能用自己的話說明「Utility Programs」在本 topic 中的用途。
  • 能判斷本頁內容應回到哪一個大型主機工作情境中使用。
Page 14圖像內容頁1 張圖像360 字元

Compilers, Binders, and Utilities - Utility Programs

Compilers, Binders, and Utilities Utility Programs: Compilers, Binders, and Utilities - Utility Programs screenshot
Utility Programs (html-wrapper)
課程正文

獨立實用程式是透過對存放該實用程式的裝置執行 IPL 來啟動。這可以是已初始化以指向該獨立實用程式位置的磁碟卷,或是已裝載的磁帶卷。

在每種情況下,會執行 IPL,並指定存放該獨立實用程式的裝置(磁碟或磁帶)的位址。

LOADxxIPL
學習檢核
  • 能用自己的話說明「Utility Programs」在本 topic 中的用途。
  • 能辨識 LOADxx、IPL 的基本角色。
  • 能判斷本頁內容應回到哪一個大型主機工作情境中使用。
Page 15圖像內容頁1 張圖像6 項補充說明387 字元

Compilers, Binders, and Utilities - Utility Programs

Compilers, Binders, and Utilities Utility Programs: Compilers, Binders, and Utilities - Utility Programs screenshot
Utility Programs (html-wrapper)
圖像補充說明
圖像說明

常用的資料集公用程式包括下列項目:

課程正文

其他工具程式在作業系統的控制下執行。有些在磁碟卷層級上運作,但大多數用於在資料集與記錄層級複製、修改、重組或比對資料。

這些程式對應用程式程式設計師在開發與測試程式時很有用。

將滑鼠移到工具名稱上方即可顯示其最常使用的功能。

Data set
學習檢核
  • 能用自己的話說明「Utility Programs」在本 topic 中的用途。
  • 能辨識 Data set 的基本角色。
  • 能把互動圖像中的元件改寫成前後順序清楚的流程說明。
  • 能判斷本頁內容應回到哪一個大型主機工作情境中使用。
Page 16圖像內容頁1 張圖像228 字元

Compilers, Binders, and Utilities - Utility Programs

Compilers, Binders, and Utilities Utility Programs: Compilers, Binders, and Utilities - Utility Programs screenshot
Utility Programs (html-wrapper)
課程正文

需要作業控制敘述來啟動由作業系統控制的工具程式。例如,下列 Job Control Language (JCL) 將啟動工具程式 IEBGENER 以列印資料集 OP100.JCL.CNTL。

Data setJCL
學習檢核
  • 能用自己的話說明「Utility Programs」在本 topic 中的用途。
  • 能辨識 Data set、JCL 的基本角色。
  • 能判斷本頁內容應回到哪一個大型主機工作情境中使用。
Page 17圖像內容頁1 張圖像592 字元

Compilers, Binders, and Utilities - Utility Programs

Compilers, Binders, and Utilities Utility Programs: Compilers, Binders, and Utilities - Utility Programs screenshot
Utility Programs (html-wrapper)
課程正文

在您的資料中心可能會使用三種資料管理環境:VSAM、非‑VSAM 與 z/OS UNIX。

本節討論的大多數公用程式處理的是非‑VSAM 資料集,但值得一提的是 IDCAMS 公用程式及其建立與操作 VSAM 資料集的能力。

IDCAMS 可從 JCL、TSO 終端機或使用者的應用程式中呼叫,並能與四種 VSAM 資料集互動,這些類型包括 Key Sequenced Data Sets (KSDS)、Relative Record Data Sets (RRDS)、Entry Sequenced Data Sets (ESDS) 及 Linear Data Sets。

Data setTSO/EJCL
學習檢核
  • 能用自己的話說明「Utility Programs」在本 topic 中的用途。
  • 能辨識 Data set、TSO/E、JCL 的基本角色。
  • 能判斷本頁內容應回到哪一個大型主機工作情境中使用。

模組完成

Page 22內容頁1 張圖像513 字元

Compilers, Binders, and Utilities - Module Complete

Compilers, Binders, and Utilities Module Test: Compilers, Binders, and Utilities - Module Complete screenshot
Module Complete (content)
課程正文

模組已完成:編譯器、連結器與公用程式

您可以按一下 'Exit' 離開「編譯器、連結器與公用程式」並記錄您的結果,或使用型錄返回並檢視本模組。

若要再次參加「編譯器、連結器與公用程式」模組測驗,您必須先離開模組,然後從您的 LMS 重新參加測驗。

注意:為確保正確儲存您的結果,請使用位於此訓練視窗右上角的 'Exit' 按鈕。請勿使用瀏覽器右上角的 'X'。

學習檢核
  • 能用自己的話說明「Module Complete」在本 topic 中的用途。
  • 能判斷本頁內容應回到哪一個大型主機工作情境中使用。

練習與評量

本模組的練習測驗與 Module Test 題目已納入「練習與評量」,可依題型或來源篩選練習。本站以非計分模式提供 11 題練習;正式分數、attempt、completion 與憑證仍以 YourLearnings / InterSkill 為準。

  • 練習測驗:4 題
  • Module Test:7 題

前往練習與評量

IBM Z course transfer site for Taiwan enablement.