第8章系统程式.ppt

  1. 1、本文档共96页,可阅读全部内容。
  2. 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
  3. 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  4. 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
第8章系统程式.ppt

本章重點 電腦系統是由硬體及軟體所組成 軟體可分為系統程式(或稱為系統軟體)與應用程式(或稱為應用軟體)二類 本章將介紹系統程式中較具代表性的軟體 由於作業系統將在第九章介紹,因此本章的介紹不包括作業系統 電腦軟體分類 電腦系統是由硬體及軟體所組成 軟體可分為 應用軟體(application software) 系統軟體(system software) 應用軟體是為了處理某個特定的問題而撰寫的程式,應用軟體也可稱為應用程式(application program) 應用軟體基本定義 應用軟體是為了處理某個特定的問題而撰寫的程式,應用軟體也可稱為應用程式(application program) 常用的應用軟體有二類,分別是: 市售套裝軟體 如電腦遊戲軟體、文書處理軟體及多媒體軟體等等 使用者自行撰寫的程式 系統軟體基本定義 系統軟體是指電腦系統為維特正常運作或開發應用程式所不可缺少的軟體 如作業系統(Operating System;OS)、組譯程式(assembler)、編譯程式(compiler)、直譯程式(interpreter)、載入程式(loader)、連結程式(linker)、巨集處理程式(macro processor)、前置處理器(preprocessor)及公用程式(utility)等軟體 系統軟體有時也可稱為系統程式(system program) 應用軟體 市售套裝軟體是最常用的應用軟體 常見的套裝軟體有 「文書處理軟體」、「電子試算表軟體」、「簡報軟體」、「繪圖及影像管理軟體」、「多媒體軟體」、「通訊軟體」及「資料庫管理系統」等,下表為常用的套裝軟體的細部分類及範例 套裝軟體的細部分類及範例 套裝軟體的細部分類及範例(cont.) 常用的系統軟體的功能及範例 常用的系統軟體的功能及範例 (cont.) 組譯程式 (assembler) 組譯程式的功能是將組合語言寫成的原始程式翻譯成目的碼 組譯程式功能圖 組譯程式的工作及輸出 組譯程式應執行的工作有以下 5 項 將機器指令轉換成相對應的機器碼 將符號運算元(symbolic operand)轉換成相對應的機器位址 以機器所能接受的格式產生機器指令 將資料常數(constant)轉換成機器內部的表示法 產生的目的碼(object code)及組合程式列表 目的碼之基本內容 組譯程式處理完原始程式碼後將產生目的碼,而目的碼之基本內容應有以下三種 標頭記錄(head record) 記載程式的名稱,程式的起始位址以及程式的長度等三種資訊 本文記錄(text record) 記載程式的內容,包括指令的機器碼,欲載入的位址及資料 結束記錄(end record) 記載程式的結束處, 並指定程式第一個開始執行的指令的位址 組譯程式的分類 組譯程式依不同的處理方式,通常可以分為三類 單次處理組譯程式 兩次處理組譯程式 多次處理組譯程式 單次處理組譯程式(single pass assembler) 處理原始程式碼一次並產生的目的碼 單次處理組譯程式允許「後方參考」(backward reference),但不允許「前方參考」(forward reference)動作 「後方參考」指符號先定義,才引用,而「前方參考」則是指符號未定義前就先引用 單次處理組譯程式處理方式如下圖 單次處理組譯程式(cont.) 因為單次處理組譯程式只掃瞄原始程式碼一次,因此組譯(assemble)時間在三種組譯程式中最短 因目的碼未執行最佳化處理(optimization),執行效率可能稍差 單次處理組譯程式範例 解: AX、BX、CX及DX為暫存器名稱,因此可直接引用不需定義。此程式段中定義的符號共有三個,分別是LOOP、DATA及SIX,因此僅需針對此三個符號說明即可 (1)「backward reference」指令:JMP LOOP (2)「forward reference」指令:SUB BX, SIX及MOV DX, DATA 兩次處理組譯程式(two pass assembler) 兩次處理組譯程式的程式結構分為二個部份,分別是Pass 1與Pass 2 先由Pass 1處理原始程式後,輸出「中間碼」,Pass 2再處理「中間碼」後輸出目的碼(請注意:不是處理原始程式二次) Pass1的工作為定義符號(define symbol),而Pass 2的工作則為產生目的程式(generate object code) 兩次處理組譯程式處理方式如下圖 多次處理組譯程式(multiple pass assembler) 多次處理組譯程式會作多次掃瞄的動作,因此允許「前方參考」 在第一次處理時先保留這些

文档评论(0)

youbika + 关注
实名认证
内容提供者

该用户很懒,什么也没介绍

1亿VIP精品文档

相关文档