李官陵彭勝龍羅壽之 1
現今電腦的通用架構 基於范紐曼模式 (von Neumann Model) 架構 將程式指令記憶體和資料記憶體合併在一起的電腦設計概念架構 2
中央處理單元或中央處理器 CPU (Central Processing Unit) 負責程式的執行 控制以及數位資料的處理與運算 主要包含 算術邏輯單元 (Arithmetic Logic Unit, ALU) 控制單元 (Control Unit, CU) 暫存器 (Register) 極小的儲存裝置, 可以暫時儲存程式或資料 3
1. 控制單元負責控制電腦執行程式的流程協調輸入 輸出 記憶以及算術邏輯等部門的運作, 使得電腦能自動化的處理資料 2. 算術邏輯單元算術邏輯單元是算術單元 (Arithmetic Unit, AU) 與邏輯單元 (Logic Unit, LU) 的合稱負責程式中各類算術運算與邏輯運算 4
3. 暫存器 在中央處理器中暫時存放指令或資料的地方 存取速度比主記憶體快很多 能大幅的增加中央處理器的效能 暫存器依用途可大致區分為三類 指令暫存器 (Instruction Register, IR) 儲存準備要被執行的指令 程式指標暫存器 (Program Counter, PC) 記錄下一個所要執行的指令位址 通用暫存器 (General Purpose Register, GPR) 可以由程式設計師指定程式使用的暫存器 可用來儲存程式執行時暫存的資料或運算結果, 通常這種暫存器越多, 程式執行的效率越高 5
是電腦執行運算時所使用的記憶體, 稱為主要記憶體 外部儲存裝置中存放在外部儲存裝置的資料不會因為電源的消失而消失, 因此可隨時讀至主記憶體中進行後續的計算與處理 6
暫存器位於記憶體階層的最上層, 是速度最快且單位價格最高的記憶體 介於暫存器與主記憶體之間的是快取記憶體, 就如同在階層中的位置, 快取記憶體乃是一種比暫存器速度慢, 但比主記憶體速度快的記憶體 7
主記憶體是以半導體元件製成, 與輔助記憶體相比, 其存取的速度快但成本高 依照其揮發的特性 唯讀記憶體 (Read Only Memory, ROM) 成本較高, 屬於非揮發性的記憶體 在無電力的狀態下亦可保留資料 傳統的 ROM 只能寫入資料一次, 因此用來儲存開機使用的程式 隨機存取記憶體 (Random Access Memory, RAM) 8
RAM 的分類 動態隨機存取記憶體 (Dynamic RAM, DRAM) 以電容器 (capacitor) 的方式儲存資料, 隨著時間的流逝, 電容器會逐漸地失去它的電容量 必須週期性的更新內容以保存其儲存的資料 靜態隨機存取記憶體 (Static RAM, SRAM) 以正反器 (flip-flop gate) 的方式設計, 在電源維持的狀態下, 不須要做更新 (reflesh) 的動作即可保留儲存其內的資料, 因此速度較 DRAM 快得許多 因為電路設計的關係, 相對於 DRAM 而言, 其成本較高, 且所需的晶片面積也大得許多 9
輔助記憶體 位於記憶體階層的最底層 相較於上層的記憶體, 其存取速度慢得許多, 但價格便宜且儲存空間大 10
主記憶體的功能是儲存正在執行的程式與資料 輔助記憶體則是用來儲存在電源消失後仍需保留的資料 11
從現在的觀點, 輸入裝置泛指透過使用者的操作將資料輸入至電腦內部的設備 ; 輸出裝置則是將電腦的處理結果與訊息呈現給使用者的設備 12
鍵盤是輔助我們將資料輸入電腦的標準輸入裝置, 與主機板連接的介面規格主要為 PS2 與 USB 13
滑鼠它與主機板連接的介面主要為 PS2 與 USB, 滑鼠的種類繁多, 大致上有二鍵 三鍵 軌跡球與電競用滑鼠 14
掃描器 (scanner) 基本上就像是影印機, 可以將靜態的文件 圖片等複製下來 先將光線投射至待掃描的文件上, 光線反射回來後經由感光元件接收 因為文件上較暗的地方反射的光較少, 亮的地方反射的光較多, 因此感光元件將反射回來的光的強弱轉換為數位資料, 最後即可組成數位影像 15
掃描器的解析度 掃描後文件的效果與掃描器的解析度有關 解析度的單位是 DPI (dot per inch) 掃描器在掃描時每英吋的取樣點數 300 dpi 就表示所掃描的文件每英吋將產生 300 點的資料 掃描時設定的 DPI 越高, 掃描的結果越精密, 但所需的儲存空間也越大 掃描器在包裝上通常會標明兩種解析度 光學解析度 掃描器感光元件實際的感測能力, 代表掃描器本身硬體的條件 軟體解析度 掃描器將圖檔掃進來後, 利用驅動程式運算後所獲得的解析度 16
螢幕是電腦最主要的輸出設備 17
在選購印表機時兩個重要的判斷指標 列印速度 單位是 PPM (page per minute), 指得是每分鐘能連續列印的英文文件最大的頁數 列印品質 以解析度標示 ( 單位是 DPI ) 解析度越高, 列印的品質越好, 然而耗費的碳粉或墨水也越多 18
電腦的運作就是程式的執行 程式要被執行之前都必須先載入到主記憶體內 中央處理器會從主記憶體內將須執行的程式指令搬到暫存器中, 並對程式指令進行指令解碼 執行與結果儲存的動作 執行完畢後, 會再重複上述的動作, 至主記憶體中, 將下一個須執行的指令搬到暫存器中並開始執行 中央處理器執行一個指令的過程稱為機器週期 (machine cycle), 一個機器週期可分為讀取 解碼 執行與結果回存四個步驟 19
指令讀取與指令解碼的總花費時間稱為指令時間 (Instruction Time, I-Time) 指令執行與結果回存的總花費時間稱為執行時間 (Execution Time, E-Time) 一個機器週期即為 I-Time + E-Time 20
布林代數 (Boolean Algebra) 與一般代數的不同在於它只專注於處理 0 與 1 的數值 代表著 真 (True) 與 偽 (False) 的觀念 1. 常數 (constant):0 ( 偽 ) 與 1 ( 真 ) 2. 二元變數 (binary variable): 變數的值只能為 0 或 1 3. 運算子 (operator):and OR NOT 是三種最基本的運算子, AND 與 OR 是二元運算子 NOT 是單元運算子, 其優先權為 NOT > AND > OR 21
真值表 X Y 代表著變數 最後一欄則代表著運算式 ( 或稱布林函數 ) 22
範例一 假設布林函數 F( X, Y ) X Y X Y, 那麼 F(1, 0) 的值為何? 將 X = 1 Y = 0 帶入 F(X,Y) 中 F(1,0) 1 0 1 0 運算子的優先權大小為 NOT > AND > OR F(1,0) 0 0 1 1 0 1 1 23
範例二 請寫出布林函數的真值表 F( X, Y, Z) X Y Z Y Z 將所有可能的輸入組合帶入此布林函數並運算出結果, 再製作成對應的表格即可完成 要算出 F(0, 0, 0) ~ F(1,1,1) 共八種結果 F(0,0,0) 0 0 0 0 0 1 0 0 1 1 0 0 1 0 1 1 24
隨堂練習 請寫出布林函數的真值表 解答 : 依序算出 F(0, 0, 0) ~ F(1,1,1) 八種結果再製作成對應表格即可完成 F( X, Y, Z) X Y Z X Y Z X Y Z F(0,0,0) 0 0 0 0 0 0 0 0 0 0 0 1 0 1 0 1 0 0 0 0 0 0 25
在邏輯設計中, 我們可利用各式各樣的邏輯閘設計出電路 26
範例三 Exclusive OR (XOR) 是一個常用的二元邏輯運算子, 它的運算符號為, 當輸入的運算元一個為 1 一個為 0 時, 結果則為 1, 否則則為 0 F( X, Y) X Y X Y 當 X = 0 而且 Y = 1 或者 X = 1 而且 Y = 0 的時候, 結果會是 1 27
F( X, Y) X Y X Y 28
XY 1 1 1 0 X + Y 1 0 0 0 29
1 位元的加法 30
31
全加法器 將前一個位元產生的進位稱為 C in, 加完後產生的進位稱為 C out 總共有三個輸入 ( X Y C in ) 與兩個輸出 ( Sum C out ) 32
33
有了全加法器, 現在只要將多個全加法器串聯起來, 就可以設計出多位元的加法器 34
隨堂練習 請設計出 4 位元的減法器 ( 提示 : 可以利用加法器與二的補數法觀念完成 ) 解答 : 將 x y 改寫成 x + ( y), 也就是將 y 轉成負數後, 再利用加法器完成加法即可將 x y 實踐 一個數的二的補數就是 1 變 0 0 變 1 變完之後再加 1 將 y 轉成 y, 只需將每一個位元做反轉 ( 也就是 NOT ), 並將加法器最低位的 C in 設為 1 即可完成 35
隨堂練習 ( 續 ) 36