當(dāng)前位置:首頁 > 單片機(jī) > 單片機(jī)
[導(dǎo)讀]ARM的9種尋址方式1)立即尋址操作數(shù)是立即數(shù),以“#”為前綴,表示 16 進(jìn)制數(shù)值時以“0x”表示。例:MOV R0,#0xFF00 ;0xFF00 -> R0SUBS R0,R0,#1 ;R0 – 1 -> R02)寄存器尋址操作數(shù)的值在寄存器中,指令執(zhí)行時直接取

ARM的9種尋址方式

1)立即尋址

操作數(shù)是立即數(shù),以“#”為前綴,表示 16 進(jìn)制數(shù)值時以“0x”表示。

例:

MOV R0,#0xFF00 ;0xFF00 -> R0

SUBS R0,R0,#1 ;R0 – 1 -> R0

2)寄存器尋址

操作數(shù)的值在寄存器中,指令執(zhí)行時直接取出寄存器值操作。

例:

MOV R1,R2 ;R2 -> R1

SUB R0,R1,R2 ;R1 - R2 -> R0

3)寄存器偏移尋址

當(dāng)?shù)诙僮鲾?shù)是寄存器偏移方式時,第二個寄存器操作數(shù)在與第一個操作數(shù)結(jié)合之前,選擇進(jìn)行移位操作。

例:

MOV R0,R2,LSL #3 ;R2 的值左移 3 位,結(jié)果放入 R0,即 R0 = R2 * 8

ANDS R1,R1,R2,LSL #3 ;R2 的值左移 3 位,然后和 R1 相與操作,結(jié)果放入 R1

可采用的移位操作:

LSL:邏輯左移(Logical Shift Left),低端空出位補(bǔ) 0

LSR:邏輯右移(Logical Shift Right),高端空出位補(bǔ) 0

ASR:算術(shù)右移(Arithmetic Shift Right),移位過程中符號位不變,即源操作數(shù)為正數(shù),則高端空出位補(bǔ) 0,否則補(bǔ) 1

ROR:循環(huán)右移(Rotate Right),由低端移出位填入高端空出位

RRX:帶擴(kuò)展的循環(huán)右移(Rotate Right eXtended by 1 place),操作數(shù)右移一位,高端空出位用原 C 標(biāo)志值填充。

4)寄存器間接尋址

操作數(shù)保存在寄存器指定地址的存儲單元中,即寄存器為操作數(shù)的地址指針。

例:

LDR R1,[R2] ;將 R2 中的數(shù)值作為地址,取出此地址中的數(shù)據(jù)保存在 R1 中

SWP R1,R1,[R2] ;將R2中的數(shù)值作為地址,取出此地址中的數(shù)值與 R1 中的值**

5)基址尋址

將基址寄存器的值與偏移量相加,形成操作數(shù)的有效地址,基址尋址用于訪問基址附近的存儲單元,常用于查表、數(shù)組操作、功能寄存器訪問等。

例:

LDR R2,[R3,#0x0F] ;將R3中的數(shù)值加 0x0F 作為地址,取此地址的值保存在 R2 中

STR R1,[R0,#-2] ;將R0中的數(shù)值減 2 作為地址,把 R1的值保存到此地址中

6)多寄存器尋址

一次傳送多個寄存器值,允許一條指令傳送 16 個寄存器的任何子集或所有寄存器。多寄存器尋址時,寄存器子集按由小到大的順序排列,連續(xù)的寄存器可用“-”連接,否則,用“,”分隔書寫。

例:

LDMIA R1!,{R2-R7,R12} ;將 R1的值讀出到 R2-R7,R12,過程中R1 自動加 1

STMIA R0!,{R3-R6,R10};將 R3-R6,R10的值保存到 R0 指向的地址,過程中R0 自動加 1

7)堆棧尋址

堆棧尋址使用堆棧指針SP,即R13,指向堆棧的棧頂。堆??煞譃閮煞N:

向上生長:向高地址方向生長,稱為遞增堆棧,

向下生長:向低地址方向生長,稱為遞減堆棧,

堆棧指針指向最后壓入的有效數(shù)據(jù)項(xiàng),稱為滿堆棧,

堆棧指針指向下一個要放入的空位置,稱為空堆棧,這樣就有 4 種類型的堆棧。

A)滿遞增:堆棧地址向上增長,堆棧指針指向有效數(shù)據(jù)的最高地址。如 LDMFA,STMFA。

B)空遞增:堆棧地址向上增長,堆棧指針指向堆棧上的第一個空位置。如 LDMEA,STMEA 。

C)滿遞減:堆棧地址向下增長,堆棧指針指向有效數(shù)據(jù)項(xiàng)的最低地址。如 LDMFD,STMFD。

D)空遞減:堆棧地址向下增長,堆棧指針指向堆棧下的第一個空位置。如 LDMED,STMED 。

例:

STMFD SP!,{R1-R7,LR} ; 將 R1~R7,LR 入棧。滿遞減堆棧。

LDMFD SP!,{R1-R7,LR} ;數(shù)據(jù)出棧,放入 R1~R7,LR 寄存器。滿遞減堆棧。

8)塊拷貝尋址

用于將一塊數(shù)據(jù)從存儲器的某一位置拷貝到另一位置。

例:

STMIA R0!,{R1-R7} ;將R1~R7的數(shù)據(jù)保存到存儲器中,存儲器指針在保存第一個值之后增加,增長方向?yàn)橄蛏显鲩L。

STMIB R0!,{R1-R7} ;將R1~R7的數(shù)據(jù)保存到存儲器中,存儲器指針在保存第一個值之前增加,增長方向?yàn)橄蛏显鲩L。

STMDA R0!,{R1-R7} ;將R1~R7的數(shù)據(jù)保存到存儲器中,存儲器指針在保存第一個值之后增加,增長方向?yàn)橄蛳略鲩L。

STMDB R0!,{R1-R7} ;將R1~R7的數(shù)據(jù)保存到存儲器中,存儲器指針在保存第一個值之前增加,增長方向?yàn)橄蛳略鲩L。

9)相對尋址

相對尋址是基址尋址的一種變通,由程序計(jì)數(shù)器 PC 提供基準(zhǔn)地址,指令中的地址

碼字段作為偏移量,兩者相加后得到有效地址。

例:

BL ROUTE1 ;調(diào)用ROUTE1 子程序

BEQ LOOP ;條件跳轉(zhuǎn)到 LOOP 標(biāo)號處

LOOP MOV R2,#2

ROUTE1


本站聲明: 本文章由作者或相關(guān)機(jī)構(gòu)授權(quán)發(fā)布,目的在于傳遞更多信息,并不代表本站贊同其觀點(diǎn),本站亦不保證或承諾內(nèi)容真實(shí)性等。需要轉(zhuǎn)載請聯(lián)系該專欄作者,如若文章內(nèi)容侵犯您的權(quán)益,請及時聯(lián)系本站刪除。
換一批
延伸閱讀

9月2日消息,不造車的華為或?qū)⒋呱龈蟮莫?dú)角獸公司,隨著阿維塔和賽力斯的入局,華為引望愈發(fā)顯得引人矚目。

關(guān)鍵字: 阿維塔 塞力斯 華為

加利福尼亞州圣克拉拉縣2024年8月30日 /美通社/ -- 數(shù)字化轉(zhuǎn)型技術(shù)解決方案公司Trianz今天宣布,該公司與Amazon Web Services (AWS)簽訂了...

關(guān)鍵字: AWS AN BSP 數(shù)字化

倫敦2024年8月29日 /美通社/ -- 英國汽車技術(shù)公司SODA.Auto推出其旗艦產(chǎn)品SODA V,這是全球首款涵蓋汽車工程師從創(chuàng)意到認(rèn)證的所有需求的工具,可用于創(chuàng)建軟件定義汽車。 SODA V工具的開發(fā)耗時1.5...

關(guān)鍵字: 汽車 人工智能 智能驅(qū)動 BSP

北京2024年8月28日 /美通社/ -- 越來越多用戶希望企業(yè)業(yè)務(wù)能7×24不間斷運(yùn)行,同時企業(yè)卻面臨越來越多業(yè)務(wù)中斷的風(fēng)險,如企業(yè)系統(tǒng)復(fù)雜性的增加,頻繁的功能更新和發(fā)布等。如何確保業(yè)務(wù)連續(xù)性,提升韌性,成...

關(guān)鍵字: 亞馬遜 解密 控制平面 BSP

8月30日消息,據(jù)媒體報道,騰訊和網(wǎng)易近期正在縮減他們對日本游戲市場的投資。

關(guān)鍵字: 騰訊 編碼器 CPU

8月28日消息,今天上午,2024中國國際大數(shù)據(jù)產(chǎn)業(yè)博覽會開幕式在貴陽舉行,華為董事、質(zhì)量流程IT總裁陶景文發(fā)表了演講。

關(guān)鍵字: 華為 12nm EDA 半導(dǎo)體

8月28日消息,在2024中國國際大數(shù)據(jù)產(chǎn)業(yè)博覽會上,華為常務(wù)董事、華為云CEO張平安發(fā)表演講稱,數(shù)字世界的話語權(quán)最終是由生態(tài)的繁榮決定的。

關(guān)鍵字: 華為 12nm 手機(jī) 衛(wèi)星通信

要點(diǎn): 有效應(yīng)對環(huán)境變化,經(jīng)營業(yè)績穩(wěn)中有升 落實(shí)提質(zhì)增效舉措,毛利潤率延續(xù)升勢 戰(zhàn)略布局成效顯著,戰(zhàn)新業(yè)務(wù)引領(lǐng)增長 以科技創(chuàng)新為引領(lǐng),提升企業(yè)核心競爭力 堅(jiān)持高質(zhì)量發(fā)展策略,塑強(qiáng)核心競爭優(yōu)勢...

關(guān)鍵字: 通信 BSP 電信運(yùn)營商 數(shù)字經(jīng)濟(jì)

北京2024年8月27日 /美通社/ -- 8月21日,由中央廣播電視總臺與中國電影電視技術(shù)學(xué)會聯(lián)合牽頭組建的NVI技術(shù)創(chuàng)新聯(lián)盟在BIRTV2024超高清全產(chǎn)業(yè)鏈發(fā)展研討會上宣布正式成立。 活動現(xiàn)場 NVI技術(shù)創(chuàng)新聯(lián)...

關(guān)鍵字: VI 傳輸協(xié)議 音頻 BSP

北京2024年8月27日 /美通社/ -- 在8月23日舉辦的2024年長三角生態(tài)綠色一體化發(fā)展示范區(qū)聯(lián)合招商會上,軟通動力信息技術(shù)(集團(tuán))股份有限公司(以下簡稱"軟通動力")與長三角投資(上海)有限...

關(guān)鍵字: BSP 信息技術(shù)
關(guān)閉
關(guān)閉