中央處理器的物理結構
1、邏輯部件
英文Logic components;運(yun)(yun)算(suan)邏輯部件。可以執行(xing)定點或浮(fu)點算(suan)術運(yun)(yun)算(suan)操作(zuo)、移位操作(zuo)以及邏輯操作(zuo),也可執行(xing)地址運(yun)(yun)算(suan)和(he)轉換(huan)。
2、寄存器
寄存(cun)器(qi)部件(jian),包括寄存(cun)器(qi)、專用寄存(cun)器(qi)和控制寄存(cun)器(qi)。 通用寄(ji)存(cun)器又可(ke)分(fen)定點(dian)數和浮(fu)點(dian)數兩類,它們用來(lai)保存(cun)指(zhi)令執(zhi)行(xing)過程(cheng)中(zhong)(zhong)臨時存(cun)放的寄(ji)存(cun)器操作數和中(zhong)(zhong)間(或(huo)最終)的操作結果(guo)。 通(tong)用寄存器是(shi)中央(yang)處理器的重要部件之一。
3、控制部件
英(ying)文(wen)Control unit,控制部件,主要是負責對(dui)指(zhi)令譯碼,并且發出為完(wan)成每條指(zhi)令所要執行的各個操作的控制信(xin)號。
其結構有兩種,一種是以微(wei)(wei)存儲為(wei)(wei)核(he)心的微(wei)(wei)程(cheng)序控制方式(shi);一種是以邏輯硬布(bu)線(xian)結構為(wei)(wei)主的控制方式(shi)。
微(wei)(wei)存儲(chu)中保持微(wei)(wei)碼(ma),每一個(ge)(ge)微(wei)(wei)碼(ma)對應(ying)于一個(ge)(ge)最基(ji)本的微(wei)(wei)操(cao)作,又(you)稱微(wei)(wei)指令(ling);各(ge)條指令(ling)是由不(bu)同(tong)序(xu)列的微(wei)(wei)碼(ma)組成(cheng),這種微(wei)(wei)碼(ma)序(xu)列構成(cheng)微(wei)(wei)程序(xu)。中央(yang)處理器(qi)在對指令(ling)譯碼(ma)以后,即發出一定時序(xu)的控制信號,按給定序(xu)列的順(shun)序(xu)以微(wei)(wei)周期為節拍執行(xing)(xing)由這些(xie)微(wei)(wei)碼(ma)確定的若干(gan)個(ge)(ge)微(wei)(wei)操(cao)作,即可完成(cheng)某條指令(ling)的執行(xing)(xing)。
簡單指令是由(3~5)個微(wei)操作(zuo)組(zu)成(cheng),復雜(za)指(zhi)令則要由幾十個微(wei)操作(zuo)甚至幾百個微(wei)操作(zuo)組(zu)成(cheng)。
中央處理器的作用
CPU從存儲器(qi)(qi)(qi)或(huo)高速緩沖存儲器(qi)(qi)(qi)中(zhong)取出(chu)指(zhi)令(ling)(ling)(ling),放(fang)入(ru)指(zhi)令(ling)(ling)(ling)寄存器(qi)(qi)(qi),并(bing)對指(zhi)令(ling)(ling)(ling)譯(yi)碼(ma)。它把指(zhi)令(ling)(ling)(ling)分解成(cheng)(cheng)(cheng)一(yi)系列(lie)的微(wei)操(cao)作(zuo),然后發(fa)出(chu)各種控制(zhi)命令(ling)(ling)(ling),執行(xing)微(wei)操(cao)作(zuo)系列(lie),從而完成(cheng)(cheng)(cheng)一(yi)條指(zhi)令(ling)(ling)(ling)的執行(xing)。指(zhi)令(ling)(ling)(ling)是(shi)計算機規(gui)定執行(xing)操(cao)作(zuo)的類型和操(cao)作(zuo)數的基本(ben)命令(ling)(ling)(ling)。指(zhi)令(ling)(ling)(ling)是(shi)由一(yi)個(ge)字(zi)(zi)節或(huo)者多個(ge)字(zi)(zi)節組成(cheng)(cheng)(cheng),其中(zhong)包括(kuo)操(cao)作(zuo)碼(ma)字(zi)(zi)段、一(yi)個(ge)或(huo)多個(ge)有(you)關(guan)操(cao)作(zuo)數地址的字(zi)(zi)段以及一(yi)些表(biao)征機器(qi)(qi)(qi)狀態的狀態字(zi)(zi)以及特征碼(ma)。有(you)的指(zhi)令(ling)(ling)(ling)中(zhong)也直接包含操(cao)作(zuo)數本(ben)身。
1、提取
第一(yi)階段,提(ti)取,從存(cun)儲器(qi)或高速緩沖存(cun)儲器(qi)中檢索指令(為(wei)數值或一(yi)系列數值)。由程序(xu)計數器(qi)(Program Counter)指定(ding)存(cun)儲器的位置。(程序(xu)計數器(qi)保(bao)存(cun)供識(shi)別(bie)程序(xu)位置的數值(zhi)。換言(yan)之,程序(xu)計數器(qi)記錄了CPU在程序(xu)里的蹤跡。)
2、解碼
CPU根據存儲(chu)器提取(qu)到的(de)指(zhi)令(ling)來決定其執行行為。在解碼階段,指(zhi)令(ling)被拆(chai)解為有(you)意義(yi)的(de)片段。根據CPU的指(zhi)令集(ji)架構(ISA)定義將數值(zhi)解(jie)譯為(wei)(wei)指令。一部分的(de)指令數值(zhi)為(wei)(wei)運算碼(Opcode),其指(zhi)示要(yao)進行哪些運算。其它的數值通常(chang)供給指(zhi)令必要(yao)的信息(xi),諸如一個加(jia)法(Addition)運算(suan)的(de)運算(suan)目標。
3、執行
在提取和(he)解(jie)碼階(jie)段之(zhi)后,緊接(jie)著進入執(zhi)行階(jie)段。該階(jie)段中,連接(jie)到各種能夠進行所(suo)需運算的CPU部件。
例如,要求一個(ge)加法運(yun)算,算術邏輯單元(ALU,Arithmetic Logic Unit)將會連(lian)接(jie)到一組輸入(ru)和一組輸出(chu)。輸入(ru)提供了要(yao)相加的數值,而輸出(chu)將含(han)有總和的結果。ALU內含電路系統,易于輸出(chu)端完成簡單的普(pu)通(tong)運算和(he)邏(luo)輯運算(比(bi)如(ru)加(jia)法和(he)位元(yuan)運算)。如(ru)果加(jia)法運算產生一個對該CPU處理而言過大的結果(guo),在標志暫存器里可能會設置運算溢出(Arithmetic Overflow)標志。
4、寫回
最終(zhong)階(jie)段,寫(xie)回,以一定格式將執(zhi)行階(jie)段的結果簡單的寫(xie)回。運算結果經常(chang)被寫(xie)進(jin)CPU內部的暫存器,以供隨后指(zhi)(zhi)令快速存取。在其它案例中,運算(suan)結(jie)果(guo)可能寫進速度(du)較慢,但容量較大且較便(bian)宜的主(zhu)記憶體中。某些(xie)類型的指(zhi)(zhi)令會(hui)操作(zuo)程序(xu)計數器,而不直(zhi)接(jie)產(chan)生結(jie)果(guo)。這(zhe)些(xie)一般稱作(zuo)“跳轉”(Jumps),并在程(cheng)式中帶(dai)來循環行(xing)為、條件(jian)(jian)性執行(xing)(透過(guo)條件(jian)(jian)跳轉)和函式。許多指令會(hui)改變(bian)標志暫存器(qi)的(de)(de)狀態位元(yuan)。這些標志可(ke)用來影響程(cheng)式行(xing)為,緣由于它們(men)時常顯出各種運算(suan)結果。例如(ru),以一個(ge)(ge)“比較(jiao)”指令判斷兩個(ge)(ge)值(zhi)大小,根據比較(jiao)結果在標志暫存器(qi)上設置一個(ge)(ge)數(shu)值(zhi)。這個(ge)(ge)標志可(ke)藉由隨后(hou)(hou)跳轉指令來決(jue)定程(cheng)式動向。在執行(xing)指令并寫回結果之后(hou)(hou),程(cheng)序計(ji)數(shu)器(qi)值(zhi)會(hui)遞增,反(fan)覆整個(ge)(ge)過(guo)程(cheng),下一個(ge)(ge)指令周(zhou)期正常的(de)(de)提取下一個(ge)(ge)順序指令。
申明:以上內容源于程序系統索引或網民分享提供,僅供您參考使用,不代表本網站的研究觀點,請注意甄別內容來源的真實性和權威性。