国产成人精品三级麻豆,色综合天天综合高清网,亚洲精品夜夜夜,国产成人综合在线女婷五月99播放,色婷婷色综合激情国产日韩

當(dāng)前位置:首頁(yè) > 嵌入式培訓(xùn) > 嵌入式學(xué)習(xí) > 講師博文 > ARM:指令寄存器

ARM:指令寄存器 時(shí)間:2018-12-12      來源:未知

在arm 處理器共有37個(gè)寄存器。其中包含,31個(gè)通用寄存器,6個(gè)狀態(tài)寄存器,多有的這些寄存器都是32位寄存器。Arm微處理器有7中工作模式,在不同的工作模式下有不同的寄存器組,某些寄存器在不同的工作模式下是公用的。

下圖是arm微控制器的組織模式:

ARM處理器,指令寄存器,ARM嵌入式

其中 R13,R14,R15,分別對(duì)應(yīng)SP棧頂?shù)刂芳拇嫫?指向函數(shù)中的局部變量的內(nèi)存空間)、lR鏈接寄存器(函數(shù)return時(shí)將會(huì)返回到IR指向的內(nèi)存空間執(zhí)行),PC程序計(jì)數(shù)器寄存器(保存當(dāng)前正在執(zhí)行的機(jī)器指令所在存儲(chǔ)單元的地址值,可以自動(dòng)加1操作跳過4個(gè)字節(jié)指向下一條指令的地址)。

這些寄存器是arm中央處理器內(nèi)的組成部分,在其內(nèi)部存在一個(gè)指令寄存器(IR)用來保存當(dāng)前正在執(zhí)行的一條指令。PC保存的是正在執(zhí)行的這條指令的地址。不同的中央處理器的指令寄存器長(zhǎng)度是不一樣的,通常和指令的長(zhǎng)度相等。ARM指令長(zhǎng)度為32比特位,IR的大小也是32bits。一條指令的32個(gè)比特位被分為兩段操作碼和地址碼。執(zhí)行指令前先檢測(cè)指令是否是合法的指令,如果不能識(shí)別會(huì)產(chǎn)生未定義指令異常。指令寄存器中操作碼會(huì)送入指令譯碼器中。經(jīng)過譯碼后想操作控制器發(fā)出具體操作的制定信號(hào),例如加法,減法等。

獲取一條指令的過是,將PC指向的主存地址中的指令從主存取出并送入指令寄存器IR中,然后PC自加1,跳過4個(gè)字節(jié)的存儲(chǔ)單元,指向主存中的下一條指令。

指令寄存器是用來存放當(dāng)前的處理器正在執(zhí)行的指令,比如對(duì)于arm匯編語(yǔ)言中的一條指令mov r1, #5, 會(huì)被匯編器編譯為32個(gè)比特位的 E3A01005H。E3A01005H在取值的時(shí)候就會(huì)從主存儲(chǔ)其中取出并送入IR寄存器中。經(jīng)過執(zhí)行 r1 寄存器被賦值為5。

ARM處理器中指令寄存器(IR)和程序計(jì)數(shù)器(PC)的區(qū)別:

程序計(jì)數(shù)器PC也就是上圖中標(biāo)識(shí)的R15寄存器,用于保存主存的內(nèi)存地址,它指向的內(nèi)存中保存的是一條一條的ARM指令(4字節(jié)一個(gè)的機(jī)器指令)。執(zhí)行完成一條指令之后PC會(huì)自定加1(移動(dòng)四個(gè)字節(jié)),執(zhí)行主存中的下一條機(jī)器指令。PC寄存器用于保存地址,這個(gè)概念跟C語(yǔ)言中的指針變量類似,所以有地方也稱它為PC指針。

指令寄存器IR用于保存PC指向的保存在主存中的機(jī)器指令。大家知道一條指令的執(zhí)行包括取指,譯碼,執(zhí)行三個(gè)過程。其中取指過程就是將PC指向的保存在主存中的機(jī)器指令獲取到處理器中的IR寄存器中,也就是將機(jī)器指令從主存獲取到處理器的過程。然后再通過譯碼和執(zhí)行,那么一條指令就執(zhí)行結(jié)束了。

上一篇:STM32單片機(jī)如何編程

下一篇:matlab定義函數(shù)

熱點(diǎn)文章推薦
華清學(xué)員就業(yè)榜單
高薪學(xué)員經(jīng)驗(yàn)分享
熱點(diǎn)新聞推薦
前臺(tái)專線:010-82525158 企業(yè)培訓(xùn)洽談專線:010-82525379 院校合作洽談專線:010-82525379 Copyright © 2004-2022 北京華清遠(yuǎn)見科技集團(tuán)有限公司 版權(quán)所有 ,京ICP備16055225號(hào)-5京公海網(wǎng)安備11010802025203號(hào)

回到頂部