CPU 的工作原理

2022-04-28 14:45:21 字數 3757 閱讀 1288

cpu 的根本任務就是執行指令,對計算機來說最終都是一串由 0 和 1 組成的序列。cpu 從邏輯上可以劃分成 3 個模組,分別是控制單元、運算單元和儲存單元 。其內部架構如下:

控制單元

控制單元是整個cpu的指揮控制中心,由指令暫存器ir(instruction register)、指令解碼器id(instruction decoder)和 操作控制器oc(operation controller) 等組成,對協調整個電腦有序工作極為重要。它根據使用者預先編好的程式,依次從儲存器中取出各條指令,放在指令暫存器ir中,通過指令解碼(分析)確定應該進行什麼操作,然後通過操作控制器oc,按確定的時序,向相應的部件發出微操作控制訊號。操作控制器oc中主要包括:節拍脈衝發生器、控制矩陣、時鐘脈衝發生器、復位電路和啟停電路等控制邏輯。

運算單元

運算單元是運算器的核心。可以執行算術運算(包括加減乘數等基本運算及其附加運算)和邏輯運算(包括移位、邏輯測試或兩個值比較)。相對控制單元而言,運算器接受控制單元的命令而進行動作,即運算單元所進行的全部操作都是由控制單元發出的控制訊號來指揮的,所以它是執行部件。

儲存單元

儲存單元包括 cpu 片內快取和暫存器組,是 cpu 中暫時存放資料的地方,裡面儲存著那些等待處理的資料,或已經處理過的資料,cpu 訪問暫存器所用的時間要比訪問記憶體的時間短。採用暫存器,可以減少 cpu 訪問記憶體的次數,從而提高了 cpu 的工作速度。暫存器組可分為專用暫存器和通用暫存器。專用暫存器的作用是固定的,分別寄存相應的資料;而通用暫存器用途廣泛並可由程式設計師規定其用途。

總的來說,cpu 從記憶體中一條一條地取出指令和相應的資料,按指令操作碼的規定,對資料進行運算處理,直到程式執行完畢為止。具體過程可分為以下四步:

取指令

cpu 控制器從記憶體讀取一條指令並放入指令暫存器。指令的格式如下:

操作碼:就是組合語言裡的 mov,add,jmp 等符號碼;

指令解碼指令暫存器中的指令經過解碼,決定該指令應進行何種操作(就是指令裡的操作碼)、運算元在**(運算元的位址) 。

執行指令

執行指令分為兩個階段: 取運算元 和 進行運算 。

取運算元:cpu 通過定址操作,從記憶體(資料段)中讀取運算元到通用暫存器中,暫存起來。

進行運算:運算單元通過指令中的操作碼,對暫存器中的運算元進行 mov,add,jmp 操作。

指令計數cpu在單位時間內(同一時間)能一次處理的二進位制數的位數叫字長。所以,能處理字長為 8 位資料的 cpu 通常就叫 8 位的 cpu。同理,32 位cpu 能在單位時間內處理字長為 32 位的二進位制資料 。

常見的 32位 cpu 和 64位 cpu 主要存在以下兩個差異:

處理能力不同

32 位 cpu 的乙個指令,最大能處理 32 位二進位制資料,即一次能處理 4 個位元組資料。

64 位 cpu 的乙個指令,最大能處理 64 位二進位制資料,即一次能處理 8 個位元組資料。

定址空間不同

32 位 cpu 的定址範圍是 32 位的二進位制,32位二進位制能表示的位址長度為2的32次方,即定址空間最大為 4gb。

而 64 位cpu的定址範圍是 64 位的二進位制。能表示的位址長度更大,其定址空間也會更大。

參考資料

[1] cpu的內部架構和工作原理

cpu 的根本任務就是執行指令,對計算機來說最終都是一串由 0 和 1 組成的序列。cpu 從邏輯上可以劃分成 3 個模組,分別是控制單元、運算單元和儲存單元 。其內部架構如下:

控制單元

控制單元是整個cpu的指揮控制中心,由指令暫存器ir(instruction register)、指令解碼器id(instruction decoder)和 操作控制器oc(operation controller) 等組成,對協調整個電腦有序工作極為重要。它根據使用者預先編好的程式,依次從儲存器中取出各條指令,放在指令暫存器ir中,通過指令解碼(分析)確定應該進行什麼操作,然後通過操作控制器oc,按確定的時序,向相應的部件發出微操作控制訊號。操作控制器oc中主要包括:節拍脈衝發生器、控制矩陣、時鐘脈衝發生器、復位電路和啟停電路等控制邏輯。

運算單元

運算單元是運算器的核心。可以執行算術運算(包括加減乘數等基本運算及其附加運算)和邏輯運算(包括移位、邏輯測試或兩個值比較)。相對控制單元而言,運算器接受控制單元的命令而進行動作,即運算單元所進行的全部操作都是由控制單元發出的控制訊號來指揮的,所以它是執行部件。

儲存單元

儲存單元包括 cpu 片內快取和暫存器組,是 cpu 中暫時存放資料的地方,裡面儲存著那些等待處理的資料,或已經處理過的資料,cpu 訪問暫存器所用的時間要比訪問記憶體的時間短。採用暫存器,可以減少 cpu 訪問記憶體的次數,從而提高了 cpu 的工作速度。暫存器組可分為專用暫存器和通用暫存器。專用暫存器的作用是固定的,分別寄存相應的資料;而通用暫存器用途廣泛並可由程式設計師規定其用途。

總的來說,cpu 從記憶體中一條一條地取出指令和相應的資料,按指令操作碼的規定,對資料進行運算處理,直到程式執行完畢為止。具體過程可分為以下四步:

取指令

cpu 控制器從記憶體讀取一條指令並放入指令暫存器。指令的格式如下:

操作碼:就是組合語言裡的 mov,add,jmp 等符號碼;

指令解碼指令暫存器中的指令經過解碼,決定該指令應進行何種操作(就是指令裡的操作碼)、運算元在**(運算元的位址) 。

執行指令

執行指令分為兩個階段: 取運算元 和 進行運算 。

取運算元:cpu 通過定址操作,從記憶體(資料段)中讀取運算元到通用暫存器中,暫存起來。

進行運算:運算單元通過指令中的操作碼,對暫存器中的運算元進行 mov,add,jmp 操作。

指令計數cpu在單位時間內(同一時間)能一次處理的二進位制數的位數叫字長。所以,能處理字長為 8 位資料的 cpu 通常就叫 8 位的 cpu。同理,32 位cpu 能在單位時間內處理字長為 32 位的二進位制資料 。

常見的 32位 cpu 和 64位 cpu 主要存在以下兩個差異:

處理能力不同

32 位 cpu 的乙個指令,最大能處理 32 位二進位制資料,即一次能處理 4 個位元組資料。

64 位 cpu 的乙個指令,最大能處理 64 位二進位制資料,即一次能處理 8 個位元組資料。

定址空間不同

32 位 cpu 的定址範圍是 32 位的二進位制,32位二進位制能表示的位址長度為2的32次方,即定址空間最大為 4gb。

而 64 位cpu的定址範圍是 64 位的二進位制。能表示的位址長度更大,其定址空間也會更大。

參考資料

[1] cpu的內部架構和工作原理

cpu的工作原理

cpu 只能識別機器碼,如110001010。每一位只有兩種狀態,分別表示高電平和低電平。如果用這種法式去編碼,就顯得不便記憶和理解。所以隨著時代的發展,就產生了組合語言。相對機器碼,組合語言就好理解多了。它主要通過彙編指令集來實現編碼。不過cpu還是不能直接來識別出彙編碼,要通過編譯器來對組合語言...

cpu工作原理

眾所周知,cpu是電腦的 心臟 是整個微機系統的核心,因此,它也往往成了各種檔次微機的代名詞,如昔日的286 386 486,奔騰 pii k6到今天的piii p4 k7等。回顧cpu發展歷史,cpu在製造技術上已經獲得了極大的提高,主要表現在整合的電子元件越來越多,從開始整合幾千個電晶體,到現在...

CPU快取的工作原理

當cpu要讀取乙個資料時,首先會從快取 cache 中查詢,如果找到就立即讀取並送給cpu處理 如果沒有找到,就用相對慢的速度從記憶體中讀取並送給cpu處理,同時把這個資料所在的資料塊調入快取中,可以使得以後對整塊資料的讀取都從快取中進行,不必再呼叫記憶體。通過優化的的讀取機制,可以使cpu讀取快取...