轉(zhuǎn)移指令
【跳轉(zhuǎn)指令】
B 跳轉(zhuǎn)指令
BL 帶返回的跳轉(zhuǎn)指令
BLX 帶返回和狀態(tài)切換的跳轉(zhuǎn)指令
BX 帶狀態(tài)切換的跳轉(zhuǎn)指令
程序狀態(tài)寄存器訪問指令
1、【MRS指令】
MRS 通用寄存器,程序狀態(tài)寄存器(CPSR或SPSR)
MRS R0,CPSR ;傳送CPSR的內(nèi)容到R0
MRS R0,SPSR ;傳送SPSR的內(nèi)容到R0
2、【MSR指令】
MSR 程序狀態(tài)寄存器(CPSR或SPSR)_< 域 >,操作數(shù)
MSR CPSR,R0 ;傳送R0的內(nèi)容到CPSR
MSR SPSR,R0 ;傳送R0的內(nèi)容到SPSR
加載/存儲(chǔ)指令
ARM 微處理器支持加載/存儲(chǔ)指令用于在寄存器和存儲(chǔ)器之間傳送數(shù)據(jù),加載指令用于將存儲(chǔ)器中的數(shù)據(jù)傳送到寄存器,存儲(chǔ)指令則完成相反的操作。
1、【LDR指令】
LDR 目的寄存器,< 存儲(chǔ)器地址 >
LDR指令用于從存儲(chǔ)器中將一個(gè)32位的字?jǐn)?shù)據(jù)傳送到目的寄存器中。
LDR R0,[R1] ;將存儲(chǔ)器地址為R1的字?jǐn)?shù)據(jù)讀入寄存器R0。
LDR R0,[R1,R2] ;將存儲(chǔ)器地址為R1+R2的字?jǐn)?shù)據(jù)讀入寄存器R0。
LDR R0,[R1,#8] ;將存儲(chǔ)器地址為R1+8的字?jǐn)?shù)據(jù)讀入寄存器R0。
LDR R0,[R1,R2] ! ;將存儲(chǔ)器地址為R1+R2的字?jǐn)?shù)據(jù)讀入寄存器R0,并將新地址R1+R2寫入R1。
LDR R0,[R1,#8] ! ;將存儲(chǔ)器地址為R1+8的字?jǐn)?shù)據(jù)讀入寄存器R0,并將新地址R1+8寫入R1。
LDRB 和 LDRH 指令大家可以百度。
2、【STR指令】
STR 源寄存器,< 存儲(chǔ)器地址 >
STR指令用于從源寄存器中將一個(gè)32位的字?jǐn)?shù)據(jù)傳送到存儲(chǔ)器中。該指令在程序設(shè)計(jì)中比較常用,且尋址方式靈活多樣,使用方式可參考指令LDR。
STR R0,[R1],#8 ;將R0中的字?jǐn)?shù)據(jù)寫入以R1為地址的存儲(chǔ)器中,并將新地址R1+8寫入R1。
STR R0,[R1,#8] ;將R0中的字?jǐn)?shù)據(jù)寫入以R1+8為地址的存儲(chǔ)器中。
STRB 和 STRH指令大家可以百度。
聲明:本文內(nèi)容及配圖由入駐作者撰寫或者入駐合作網(wǎng)站授權(quán)轉(zhuǎn)載。文章觀點(diǎn)僅代表作者本人,不代表電子發(fā)燒友網(wǎng)立場(chǎng)。文章及其配圖僅供工程師學(xué)習(xí)之用,如有內(nèi)容侵權(quán)或者其他違規(guī)問題,請(qǐng)聯(lián)系本站處理。
舉報(bào)投訴
-
寄存器
+關(guān)注
關(guān)注
31文章
5608瀏覽量
129969 -
Linux
+關(guān)注
關(guān)注
88文章
11760瀏覽量
219019 -
程序
+關(guān)注
關(guān)注
117文章
3846瀏覽量
85238 -
系統(tǒng)
+關(guān)注
關(guān)注
1文章
1046瀏覽量
22310
發(fā)布評(píng)論請(qǐng)先 登錄
相關(guān)推薦
熱點(diǎn)推薦
多寄存器Load/Store內(nèi)存訪問指令
5.4 多寄存器Load/Store內(nèi)存訪問指令 多寄存器Load/Store內(nèi)存訪問指令也叫批
發(fā)表于 10-18 15:56
?1次下載
單寄存器的Load/Store指令詳解
5.3 單寄存器的Load/Store指令 Load/Store內(nèi)存訪問指令在ARM寄存器和存儲(chǔ)器
發(fā)表于 10-18 15:57
?1次下載
數(shù)據(jù)傳送指令之程序狀態(tài)寄存器指令簡(jiǎn)述
分享到:標(biāo)簽:數(shù)據(jù)傳送指令 微處理器 程序狀態(tài)寄存器指令 MRS ARM 5.6
發(fā)表于 10-18 17:03
?1次下載
淺談單寄存器數(shù)據(jù)傳送指令
11.5 單寄存器數(shù)據(jù)傳送指令 Thumb指令集支持寄存器的裝載和存儲(chǔ),即LDR和STR指令。8和類型的Load/Store
發(fā)表于 10-19 10:04
?1次下載
指令指針寄存器和指針寄存器差異性在哪兒
指令寄存器IR ,是臨時(shí)放置從內(nèi)存里面取得的代碼數(shù)據(jù)(也就是指令),然后等待譯碼器來(lái)譯碼。指令指針寄存器
發(fā)表于 11-13 10:24
?9709次閱讀
JTAG 指令寄存器和指令譯碼器介紹
指令寄存器的目的是通過(guò) TDI 信號(hào)移入指令。另外,指令寄存器還可以在新指令完全移入之前,存儲(chǔ)當(dāng)
發(fā)表于 02-03 10:42
?4344次閱讀
寄存器分為基本寄存器和什么兩種
,它們用于存儲(chǔ)指令、數(shù)據(jù)和地址等信息。基本寄存器的容量通常較小,但訪問速度非常快,因?yàn)樗鼈兣cCPU的執(zhí)行單元緊密相連。 基本寄存器的分類 基本寄存器
寄存器尋址的實(shí)現(xiàn)方式
在計(jì)算機(jī)體系結(jié)構(gòu)中,寄存器尋址是一種常見的尋址方式,它允許程序直接訪問CPU內(nèi)部的寄存器。寄存器尋址可以提高
接口的控制與狀態(tài)寄存器什么作用
接口的控制與狀態(tài)寄存器(Control and Status Registers,簡(jiǎn)稱CSR)是計(jì)算機(jī)系統(tǒng)中用于控制和監(jiān)控硬件設(shè)備操作的寄存器。它們是硬件設(shè)備與其驅(qū)動(dòng)程序之間的橋梁,允
Linux程序狀態(tài)寄存器訪問指令
評(píng)論