溫馨提示×

溫馨提示×

您好,登錄后才能下訂單哦!

密碼登錄×
登錄注冊×
其他方式登錄
點擊 登錄注冊 即表示同意《億速云用戶服務(wù)條款》

CPU中的一條指令的執(zhí)行過程是怎樣的

發(fā)布時間:2020-08-04 11:19:00 來源:億速云 閱讀:382 作者:Leah 欄目:互聯(lián)網(wǎng)科技

這篇文章將為大家詳細(xì)講解有關(guān)CPU中的一條指令的執(zhí)行過程是怎樣的,文章內(nèi)容質(zhì)量較高,因此小編分享給大家做個參考,希望大家閱讀完這篇文章后對相關(guān)知識有一定的了解。

  CPU中的一條指令的執(zhí)行過程:

幾乎所有的馮bai·諾伊曼型計算機(jī)的CPU,其工作都可以分du為5個階段:取指zhi令、指令譯碼、dao執(zhí)行指令、訪存取數(shù)、結(jié)果寫回。

1.取指令階段

取指令(Instruction Fetch,IF)階段是將一條指令從主存中取到指令寄存器的過程。

程序計數(shù)器PC中的數(shù)值,用來指示當(dāng)前指令在主存中的位置。當(dāng)一條指令被取出后,PC中的數(shù)值將根據(jù)指令字長度而自動遞增:若為單字長指令,則(PC)+1àPC;若為雙字長指令,則(PC)+2àPC,依此類推。

2.指令譯碼階段

取出指令后,計算機(jī)立即進(jìn)入指令譯碼(Instruction Decode,ID)階段。

在指令譯碼階段,指令譯碼器按照預(yù)定的指令格式,對取回的指令進(jìn)行拆分和解釋,識別區(qū)分出不同的指令類別以及各種獲取操作數(shù)的方法。

在組合邏輯控制的計算機(jī)中,指令譯碼器對不同的指令操作碼產(chǎn)生不同的控制電位,以形成不同的微操作序列;在微程序控制的計算機(jī)中,指令譯碼器用指令操作碼來找到執(zhí)行該指令的微程序的入口,并從此入口開始執(zhí)行。

3.執(zhí)行指令階段

在取指令和指令譯碼階段之后,接著進(jìn)入執(zhí)行指令(Execute,EX)階段。

此階段的任務(wù)是完成指令所規(guī)定的各種操作,具體實現(xiàn)指令的功能。為此,CPU的不同部分被連接起來,以執(zhí)行所需的操作。

4.訪存取數(shù)階段

根據(jù)指令需要,有可能要訪問主存,讀取操作數(shù),這樣就進(jìn)入了訪存取數(shù)(Memory,MEM)階段。

此階段的任務(wù)是:根據(jù)指令地址碼,得到操作數(shù)在主存中的地址,并從主存中讀取該操作數(shù)用于運(yùn)算。

5.結(jié)果寫回階段

作為最后一個階段,結(jié)果寫回(Write Back,WB)階段把執(zhí)行指令階段的運(yùn)行結(jié)果數(shù)據(jù)“寫回”到某種存儲形式:

結(jié)果數(shù)據(jù)經(jīng)常被寫到CPU的內(nèi)部寄存器中,以便被后續(xù)的指令快速地存取;

在有些情況下,結(jié)果數(shù)據(jù)也可被寫入相對較慢、但較廉價且容量較大的主存。許多指令還會改變程序狀態(tài)字寄存器中標(biāo)志位的狀態(tài),這些標(biāo)志位標(biāo)識著不同的操作結(jié)果,可被用來影響程序的動作。

在指令執(zhí)行完畢、結(jié)果數(shù)據(jù)寫回之后,若無意外事件(如結(jié)果溢出等)發(fā)生,計算機(jī)就接著從程序計數(shù)器PC中取得下一條指令地址,開始新一輪的循環(huán),下一個指令周期將順序取出下一條指令。

關(guān)于CPU中的一條指令的執(zhí)行過程是怎樣的就分享到這里了,希望以上內(nèi)容可以對大家有一定的幫助,可以學(xué)到更多知識。如果覺得文章不錯,可以把它分享出去讓更多的人看到。

向AI問一下細(xì)節(jié)

免責(zé)聲明:本站發(fā)布的內(nèi)容(圖片、視頻和文字)以原創(chuàng)、轉(zhuǎn)載和分享為主,文章觀點不代表本網(wǎng)站立場,如果涉及侵權(quán)請聯(lián)系站長郵箱:is@yisu.com進(jìn)行舉報,并提供相關(guān)證據(jù),一經(jīng)查實,將立刻刪除涉嫌侵權(quán)內(nèi)容。

AI