跳轉到內容

A-level 計算機科學 2009/CIE/理論基礎/處理器基礎

來自華夏公益教科書,開放的書籍,為開放的世界

4.1 馮·諾依曼機

[編輯 | 編輯原始碼]
  • 馮·諾依曼意識到資料和程式是不可區分的,因此可以使用相同的記憶體
  • 馮·諾依曼體系結構使用單個處理器
  • 它遵循一組指令(即程式)的線性取指-譯碼-執行操作序列
  • 為了做到這一點,處理器必須使用暫存器

4.2 暫存器

[編輯 | 編輯原始碼]
  • 它是一個非常快的片上記憶體,通常大小為 32 位或 64 位,用於臨時儲存
  • 暫存器位於直接訪問儲存器之外,因此可以更快地訪問它們儲存的資料

特殊暫存器

[編輯 | 編輯原始碼]
  • 程式計數器 (PC):跟蹤要查詢下一條指令的位置,以便將指令的副本放在當前指令暫存器中
  • 記憶體資料暫存器 (MDR):充當緩衝區,並儲存從記憶體中複製的任何內容,以備處理器使用
  • 記憶體地址暫存器 (MAR):用於儲存包含下一段資料或將要使用的指令的記憶體地址
  • 索引暫存器 (IR):微處理器暫存器,用於在程式執行期間修改運算元地址
    • 如果地址間接使用;從指令中取出的常數加到 IR 的內容以形成運算元/資料的地址
  • 當前指令暫存器 (CIR):儲存要執行的指令。
  • 狀態暫存器 (SR):儲存比較的結果,以供以後決定要採取的措施,儲存執行算術運算的中間結果,以及算術運算期間發生的任何錯誤
  • 通用暫存器:CPU 中的一個或多個暫存器,用於臨時儲存資料
  • 累加器:ALU 內的單個通用暫存器
    • 它是一個單個通用暫存器,其中儲存了所有由算術和邏輯運算處理的值

4.3 處理器

[編輯 | 編輯原始碼]
  • 算術邏輯單元 (ALU):處理器的一部分,執行算術計算和邏輯決策
  • 控制單元:處理器的一部分,從記憶體中取指、解碼指令,並在將訊號傳送到計算機的其他部分之前同步操作
  • 系統時鐘:連線到處理器的計時裝置,同步取指-執行週期執行的時間

4.4 系統匯流排

[編輯 | 編輯原始碼]
  • 匯流排:連線各個元件的一組平行導線,併為它們之間提供通訊
  • 資料匯流排:雙向的,用於在系統元件之間傳輸資料和指令
    • 記憶體資料暫存器 (MDR) 位於資料匯流排的一端
  • 地址匯流排:單向的,用於從處理器傳輸到記憶體地址暫存器 (MAR) 的主記憶體位置或即將使用的輸入/輸出裝置的地址
  • 控制匯流排:雙向的,用於從控制單元傳送控制訊號,以確保系統元件訪問/使用資料和地址匯流排不會導致衝突

取指-譯碼-執行週期

[編輯 | 編輯原始碼]


1) 取指
CPU 執行的第一個步驟是從主記憶體中取指一些資料和指令,這些資料和指令儲存在稱為暫存器的臨時記憶體區域中
CPU 使用一條稱為地址匯流排的關鍵硬體路徑。CPU 將要取指的下一項的地址放在地址總線上
來自此地址的資料透過資料匯流排從主記憶體移動到 CPU

2) 譯碼
CPU 需要理解指令的含義
CPU 被設計為理解一組特定的命令,稱為“指令集”。
CPU 譯碼指令

3) 執行
資料處理正在進行
執行指令
CPU 設定自身,以便再次開始另一個週期

華夏公益教科書