:::

課程查詢 / 計算機組織



第1篇 基本觀念
01 認識生活中的計算機設備
 1.1 運算技術與計算機的源起
 1.2 計算機發展的歷史
 1.3 認識電腦系統
 1.4 認識計算機結構
 1.5 電腦的種類
 1.6 半導體與電腦產業
02 計算機組織與結構簡介
 2.1 處理器與指令集
 2.2 記憶體裝置
 2.3 輸入與輸出(I/O)裝置
 2.4 平行處理的架構
 2.5 計算機架構的實例
03 計算機的數字系統
 3.1 數字系統簡介
 3.2 整數表示法
 3.3 浮點數表示法
04 布林代數與數位邏輯
 4.1 數位邏輯
 4.2 布林代數
 4.3 圖形簡化布林代數
 4.4 組合電路
 4.5 循序電路
第2篇 認識計算機組織與結構
05 中央處理單元
 5.1 中央處理單元簡介
 5.2 暫存器
 5.3 資料路徑
 5.4 中央處理器指令週期
 5.5 控制單元
 5.6 CPU相關知識
06 記憶體系統
 6.1 儲存媒體的特徵
 6.2 認識電腦系統的主記憶體
 6.3 電腦系統中記憶體的管理
 6.4 虛擬記憶體(Virtual memory)簡介
07 輸入與輸出
 7.1 輸入與輸出的基本概念
 7.2 輸入與輸出的處理
 7.3 從程式設計的觀點來看輸入與輸出
 7.4 I/O請求與硬體作業之間的轉換
08 處理器的指令集
 8.1 記憶體地址與運算
 8.2 定址模式
 8.3 指令類別
 8.4 CPU的指令集
 8.5 程式設計範例
09 電腦系統設計
 9.1 系統程式與作業系統
 9.2 電腦系統中軟體與硬體的搭配
 9.3 作業系統的分類
 9.4 虛擬機器(virtual machines)
第3篇 計算機組織與結構的發展
10 管線處理(Pipelining)
 10.1 管線處理基本概念
 10.2 進一步談管線處理
11 多處理器的架構(Multiprocessors)
 11.1 費林分類法
 11.2 多處理器架構技術
12 認識計算機的各種架構
 12.1 處理機的指令架構
 12.2 複雜指令集與精簡指令集運算架構
 12.3 超長指令集架構
13 嵌入式系統(embedded systems)
 13.1 嵌入式系統的應用實例
 13.2 嵌入式系統的發展歷史
 13.3 嵌入式系統的特徵
 13.4 處理器晶片的結構
 13.5 嵌入式系統的軟體架構
14 計算機效能評估(benchmarking)
 14.1 基本觀念
 14.2 計算機效能評估
 14.3 觀念整理
書封面
第1篇 基本觀念
1 Chapter 認識生活中的計算機設備
  計算機設備是一種電腦系統,所以「計算機」比較通俗的稱呼就是「電腦」。介紹電腦系統的時候都會提到「儲存程式電腦(stored-program computer)」的概念,電腦的基本結構可以用凡紐曼的架構(von Neumann architecture)來表示。資料與程式儲存在記憶裝置裡頭,處理器負責程式所交付的運算,透過輸入與輸出(input/output)作業來與外界溝通。

2 Chapter 計算機組織與結構簡介
  本章探討的是計算機科學中「計算機組織與結構」的領域,可以看成是電腦硬體部分之理論性的介紹,雖然沒有介紹特定品牌的硬體,但是我們可以從市場上實際的產品,看到本章所涵蓋的各種特徵與原理。雖然電腦硬體不斷進步,但是電腦工作的原理有很多是固定不變的觀念,而且可以在各種硬體上印證。

3 Chapter 計算機的數字系統
  電腦是採用二進位做為主要的數字系統,任何資料透過輸入介面傳送到電腦的內部,都會被轉為二進位之後再進行處理。我們在本章內容將會介紹常用數字系統不同進位制之間的轉換。電腦中數值的計算處理,都是在暫存器中進行。一般而言在暫存器中有兩種方法可以表示小數點的位置,分別是「定點表示法」與「浮點表示法」。「定點表示法」是指小數點固定在某一個位置,且最常用的二個位置是:⑴小數點在暫存器的最左邊,因此所儲存的數字為分數;及⑵小數點在暫存器的最右邊,因此所儲存的數字為整數。除了數值的表示法之外,也會提到補數的觀念,與運用補數做減法運算。

4 Chapter 布林代數與數位邏輯
  本章內容包括「數位邏輯的基本觀念」、「布林代數」、「圖形簡化布林代數」、「組合電路」與「循序電路」。這些是計算機組成元件的基本理論與基礎。首先介紹「數位邏輯基本觀念」,主要讓我們瞭解各種邏輯閘的特性;接著介紹布林代數的理論,以此可以減化邏輯電路,但是有些簡化推導不是很容易判斷,因此可以使用圖形簡化法來簡化布林代數;然後,告訴讀者如何以邏輯閘來設計組合電路;最後,配合正反器的使用與系統時脈來設計循序電路。

第2篇 認識計算機組織與結構
5 Chapter 中央處理單元
  中央處理單元在電腦系統中扮演心臟的重要角色。電腦特別是微處理機的快速發展過程,實質上就是CPU從低級向高級、從簡單向複雜發展的過程。其設計、製造和處理技術的不斷更新以及處理能力的不斷增強。在本章內容中我們要介紹CPU的內部組成元件,包含「暫存器」、「算術邏輯單元」與「控制單元」。在學習完本章內容後,讀者將具備CPU的基本觀念與運作原理,進而可以瞭解如何實作這些電腦的核心元件。

6 Chapter 記憶體系統
  電腦在執行程式的時候一定會用到儲存裝置所提供的空間,越大型的程式所需要的空間也越大。一旦電腦系統的儲存空間不敷使用的時候,就無法正常運作了,當然,這有幾種情況,一種是記憶體空間的不足,另外一種是次要儲存裝置的空間不足,例如硬碟,這是我們不希望發生的情況,所以電腦系統要有適當的機制來避免類似問題的發生。

7 Chapter 輸入與輸出
  每一台電腦的主要工作除了進行各種運算之外,就是和各種周邊裝置交換資料與訊息。作業系統必須管理周邊裝置和電腦系統之間資料的交換,我們把這些在匯流排和纜線上流通的資料歸納成輸出入系統管理的標的,下面將針對輸出入系統的功能和原理加以說明。當然,資料流通的目的不外乎傳訊或運算,完成了處理之後,最終還是要儲存起來,未來才能再取回使用,所以電腦系統有各種儲存裝置,功能和特性有不同的等級,滿足不同的使用需求;本章也將介紹電腦系統如何安排資料儲存到這些裝置中,以及如何取回資料使用。

8 Chapter 處理器的指令集
  CPU是電腦的心臟,其重要性不言而喻,而能夠讓CPU工作的便是指令。本章的內容我們要介紹處理器的指令集,主要的內容包含「定址模式」、「不同類別的指令」與「CPU的指令集」。任何可以執行的指令,必須至少提供二類資訊,分別是「指令所要執行的操作」與「運算元的地址」。不同的「定址模式」可以提供不同的運算元取得方式,讓程式設計人員在使用上更具有彈性。其次是介紹完整指令集中所包含的各種類別指令以及CPU的指令集;最後以實際的程式範例,讓讀者瞭解如何撰寫程式並解決問題。

9 Chapter 電腦系統設計
  要瞭解作業系統等於是要瞭解整個電腦系統作用的原理,因為作業系統跟電腦軟體與硬體的關係密切,在深入探討作業系統以前,我們先從作業系統的一般特徵談起,認識作業系統發展的過程,以及目前的各種作業系統,這對於學習作業系統的觀念是有幫助的。

第3篇 計算機組織與結構的發展
10 Chapter 管線處理(Pipelining)
  為了要讓電腦的處理器能夠更有效率的執行,將處理器中的模組盡量充分利用是一個可行的方向。管線處理即是在這樣的概念下衍生出來可以增進處理器效能的一種方法。它讓處理器中的個別模組可以在同一個時間內去處理指令的執行,達到類似平行處理的效果,因而增進了處理器的效能。
  在指令理想地循序執行時,管線處理可以達成促進處理器效能的目的。但是在某些情況下卻會產生問題。例如:在處理條件判斷指令時,必須去猜測後續可能執行的指令或是延遲整個管線處理的時程、管線階層深化的影響與資料相依性等問題。

11 Chapter 多處理器的架構(Multiprocessors)
  隨著硬體技術的發展,電腦上的處理器也由一個處理器演進為可同時具有多個處理器的架構。然而,處理器架構上的不同其功能與可發揮的效能也不一樣。首先,從費林分類法瞭解從資訊流的角度來看,依指令與資料兩個維度對於四種不同處理器架構進行介紹。其中,單一指令流多資料流(SIMD)與多指令流多資料流(MIMD)為較具有實務應用價值的架構。在單一指令流多資料流中,可以處理大量資料但運算方式相同的應用;多指令流多資料流則有更大的處理彈性。
  多處理機的架構下,必須設計處理機單元間的資料如何儲存與共用,以及處理器單元間的工作同步問題。因此,可考慮的方法有記憶體共享與透過處理器間的連接網路進行訊息傳遞。最後列舉說明較特殊的多處理機架構,如心臟收縮式陣列等。

12 Chapter 認識計算機的各種架構
  電腦中的處理器是電腦系統的靈魂,早期的處理器設計以直覺的想法來設計其架構。發展初期以複雜指令集架構來設計處理器。隨著技術的發展,簡單指令集的概念亦被提出,透過精簡的指令集,可以讓指令碼縮短並加快指令的執行週期。超長指令集概念的提出,則是以將不相依的指令集中於相同的指令週期內執行,以在一個指令週期內做更多的事來提升處理器的效能。超長指令集雖然其硬體設計並不複雜,但是需要搭配極佳的編譯器才能發揮最大的好處。

13 Chapter 嵌入式系統(embedded systems)
  嵌入式系統(embedded systems)像是一個縮小版的電腦,可以置入各種物品中完成特定的功能,所以嵌入式系統也稱得上是一種計算機,只是在設計與製造上有不同的規格與需求。嵌入式系統是國內目前科技發展的重點領域之一,主要是因為台灣在電子與電腦製造上已經有深厚的基礎,能夠很快地在嵌入式系統的領域上起飛。

14 Chapter 計算機效能評估(benchmarking)
  計算機的效能一直是大家關心的問題,雖然不同的計算機系統在功能與應用上會有一些差異,但是大家追求的都是更快速的運算處理能力。本章將介紹計算機效能(performance)的涵義、計算機效能評估的方法、計算機效能評估的標準,同時帶領大家一起思考提昇計算機效能的方法。
顏春煌
美國愛荷華州立大學電腦科學博士
現任國立空中大學管理與資訊學系副教授

曾展鵬
大同大學資訊工程博士
現任國立空中大學管理與資訊學系助理教授

郭秋田
國立清華大學資訊工程博士
現任國立空中大學管理與資訊學系助理教授