tft每日頭條

 > 科技

 > 連接主存和cpu的系統總線

連接主存和cpu的系統總線

科技 更新时间:2024-09-15 10:08:05

連接主存和cpu的系統總線(計算機系統的硬件組織)1

為了解在計算機系統中,程序是如何運行的,首先需要了解計算機系統的硬件組織。

連接主存和cpu的系統總線(計算機系統的硬件組織)2

1、總線

總線是貫穿整個系統一組電子管道,它攜帶信息字節并負責在各個部件間傳遞。通常總線被設計成傳送特定長的字節塊,也就是字(word)。字中的字節數是一個基本的系統參數,各個系統中都不盡相同。如32位操作系統一個字長是4個字節,64位操作系統一個字長是8個字節。

  • 位(bit),音譯為“比特”,表示二進制位。位是計算機内部數據儲存的最小單位。
  • 字節(byte) ,計算機中數據處理的基本單位,通常情況下一字節等于8位。
  • 字 (word),計算機進行數據處理時,一次存取、加工和傳送的數據長度稱為字。一個字通常由一個或多個(一般是字節的整數位)字節構成。
2、I/O設備

I/O(輸入/輸出)設備是系統與外部世界的聯系通道,通常包括:

  • 用戶輸入的鍵盤和鼠标;
  • 用戶輸出的顯示器;
  • 長期存儲數據和程序的磁盤驅動器(磁盤);
  • 網絡設備等。

每個I/O設備都通過一個控制器或适配器與I/O總線相連。控制器和适配器的區别主要在于它們的封裝方式。控制器是I/O設備本身或者主闆上的芯片組;适配器則是一塊插在主闆槽上的卡。它們的功能都是在I/O總線和I/O設備之間傳遞信息。

3、主存

主存是一個臨時存儲設備,在處理器執行程序時,用來存放程序和程序處理的數據。從物理上來說,主存是由一組動态随機存取存儲器(DRAM)芯片組成;從邏輯上來說,存儲器是一個線性的字節數組,每個字節都有其唯一的地址(數組索引),這些地址是從零開始的。

一般來說,組成程序的每條機器指令都由不同數量的字節構成。與C程序變量相對應的數據項的大小是根據類型變化的,比如在x86-64機器上 ,short類型的數據需要2個字節,int和float類型需要4個字節,而long和double類型需要8個字節。

連接主存和cpu的系統總線(計算機系統的硬件組織)3

4、處理器

處理器CPU是解釋或執行存儲在主存中指令的引擎。處理器的核心是一個大小為一個字的存儲設備(或寄存器),成為程序計數器(PC)。在任何時刻,PC都指向主存中的某條機器語言指令(即含有該條指令的地址)。

從系統通電開始,直到系統斷電,處理器一直在不斷地執行程序計數器指向的指令,再更新程序計數器,使其指向下一條指令。處理器看上去是按照一個非常簡單的指令執行模型來操作的,這個模型是由指令集架構決定的。在這個模型中,指令按照嚴格的順序執行,而執行一條指令包含執行一系列的步驟。處理器從程序計數器指向的内存處讀取指令,解釋指令中的位,執行該指令指示的簡單操作,然後更新PC,使其指向下一條指令,而這條指令并不一定和内存中剛剛執行的指令相鄰。

這樣的簡單操作并不多,它們圍繞着主存、寄存器文件和算數/邏輯單元進行。寄存器文件是一個小的存儲設備,由一些單個字長的寄存器組成,每個寄存器都有唯一的名字。算數/邏輯單元計算新的數據和地址值。CPU在指令的要求下可能會執行下面這些操作。

  • 加載:從主存複制一個字節或一個字到寄存器,以覆蓋寄存器原來的内容。
  • 存儲:從寄存器複制一個字節或一個字到到主存的某個位置,以覆蓋這個位置上原來的内容。
  • 操作:把兩個寄存器的内容複制到ALU,ALU對這兩個字做算術運算,并将結果存放到一個寄存器中,以覆蓋該寄存器原來的内容。
  • 跳轉:從指令本身中抽取一個字,并将這個字複制到程序計數器中,以覆蓋PC中原來的值。

處理器看上去是它的指令集架構的簡單實現,但實際上現代處理器使用了非常複雜的機制來加速程序的執行。

連接主存和cpu的系統總線(計算機系統的硬件組織)4

,

更多精彩资讯请关注tft每日頭條,我们将持续为您更新最新资讯!

查看全部

相关科技资讯推荐

热门科技资讯推荐

网友关注

Copyright 2023-2024 - www.tftnews.com All Rights Reserved