<dfn id="yhprb"><s id="yhprb"></s></dfn><dfn id="yhprb"><delect id="yhprb"></delect></dfn><dfn id="yhprb"></dfn><dfn id="yhprb"><delect id="yhprb"></delect></dfn><dfn id="yhprb"></dfn><dfn id="yhprb"><s id="yhprb"><strike id="yhprb"></strike></s></dfn><small id="yhprb"></small><dfn id="yhprb"></dfn><small id="yhprb"><delect id="yhprb"></delect></small><small id="yhprb"></small><small id="yhprb"></small> <delect id="yhprb"><strike id="yhprb"></strike></delect><dfn id="yhprb"></dfn><dfn id="yhprb"></dfn><s id="yhprb"><noframes id="yhprb"><small id="yhprb"><dfn id="yhprb"></dfn></small><dfn id="yhprb"><delect id="yhprb"></delect></dfn><small id="yhprb"></small><dfn id="yhprb"><delect id="yhprb"></delect></dfn><dfn id="yhprb"><s id="yhprb"></s></dfn> <small id="yhprb"></small><delect id="yhprb"><strike id="yhprb"></strike></delect><dfn id="yhprb"><s id="yhprb"></s></dfn><dfn id="yhprb"></dfn><dfn id="yhprb"><s id="yhprb"></s></dfn><dfn id="yhprb"><s id="yhprb"><strike id="yhprb"></strike></s></dfn><dfn id="yhprb"><s id="yhprb"></s></dfn>

新聞中心

EEPW首頁(yè) > 嵌入式系統 > 設計應用 > ARM指令尋址方式之: 數據處理指令的尋址方式

ARM指令尋址方式之: 數據處理指令的尋址方式

作者: 時(shí)間:2013-09-13 來(lái)源:網(wǎng)絡(luò ) 收藏

本文引用地址:http://dyxdggzs.com/article/257084.htm

4.1 的尋址方式

4.1.1 的尋址方式概要

的基本語(yǔ)法格式如下。

opcode> {cond>} {S} Rd>,Rn>,shifter_operand>

其中shifter_operand>有下面11種形式,如表4.1所示。

表4.1 shifter_operand>的尋址方式

語(yǔ) 法

尋 址 方 式

1

#immediate>

立即數尋址

2

Rm>

寄存器尋址

3

Rm>, LSL #shift_imm>

立即數邏輯左移

4

Rm>, LSL Rs>

寄存器邏輯左移

5

Rm>, LSR #shift_imm>

立即數邏輯右移

6

Rm>, LSR Rs>

寄存器邏輯右移

7

Rm>, ASR #shift_imm>

立即數算術(shù)右移

8

Rm>, ASR Rs>

寄存器算術(shù)右移

9

Rm>, ROR #shift_imm>

立即數循環(huán)右移

10

Rm>, ROR Rs>

寄存器循環(huán)右移

11

Rm>, RRX

寄存器擴展循環(huán)右移

數據處理指令的尋址方式根據shifter_operand>的不同,相應的分為11種。

4.1.2 指令

圖4.1顯示了數據處理指令不同尋址方式下的格式。

圖4.1 數據操作指令編碼格式

編碼格式中各域含義如下。

· opcode>:確定具體指令。

· S:標識指令是否影響程序狀態(tài)寄存器CPSR條件標志。

· Rd:指令操作的目的寄存器。

· Rn:指令第一源操作數。

· bit[11∶0]:移位操作,詳見(jiàn)本章移位操作一節。

· bit[25]:被用來(lái)區分是立即數移位操作還是寄存器移位操作。

如果指令編碼出現下面情況:bit[25] = 0并且bit[4] = 1并且bit[7] = 1,則指令并非數據處理指令,它可能是Load/Store指令或算術(shù)指令。

4.1.3 移位操作

數據處理指令是在算術(shù)邏輯單元ALU中完成。處理器一個(gè)顯著(zhù)特征就是可以在操作數進(jìn)入ALU之前,對操作數進(jìn)行指定位數的左移或右移操作。這種功能明顯增強了數據處理操作的靈活性。

移位操作可能產(chǎn)生進(jìn)位,更新程序狀態(tài)寄存器CPSR的進(jìn)位標志C。移位操作有下面3種基本方式。

1.立即數方式

沒(méi)有任何一條指令可以包含一個(gè)32位的立即數,數據處理指令編碼格式中,第二個(gè)操作數有12位。指令的編碼格式如圖4.1所示。

指令中的立即數是由一個(gè)8 bit的常數移動(dòng)4 bit偶數位(0,2,4,…,26,28,30)得到的。所以,每一條指令都包含一個(gè)8 bit的常數X和移位值Y,得到的立即數=X循環(huán)右移(2×Y)。

注意

8位立即數一定要移偶數位。

下面列舉了一些有效的立即數。

0xFF、0x104、0xFF0、0x FF00、0x FF000、0x FF000000、0x F000000F

下面是一些無(wú)效的立即數。

0x101、0x102、0x FF1、0x FF04、0x FF003、0x FFFFFFFF、0x F000001F

下面是一些應用立即數的指令。

MOV r0,#0 ;送0到r0

ADD r3,r3,#1 ;r3的值加1

CMP r7,#1000 ;r7的值和1000比較

BIC r9,r8,#0x FF00 ;將r8中8~15位清零,結果保存在r9中


上一頁(yè) 1 2 3 4 5 6 7 下一頁(yè)

評論


相關(guān)推薦

技術(shù)專(zhuān)區

關(guān)閉
国产精品自在自线亚洲|国产精品无圣光一区二区|国产日产欧洲无码视频|久久久一本精品99久久K精品66|欧美人与动牲交片免费播放
<dfn id="yhprb"><s id="yhprb"></s></dfn><dfn id="yhprb"><delect id="yhprb"></delect></dfn><dfn id="yhprb"></dfn><dfn id="yhprb"><delect id="yhprb"></delect></dfn><dfn id="yhprb"></dfn><dfn id="yhprb"><s id="yhprb"><strike id="yhprb"></strike></s></dfn><small id="yhprb"></small><dfn id="yhprb"></dfn><small id="yhprb"><delect id="yhprb"></delect></small><small id="yhprb"></small><small id="yhprb"></small> <delect id="yhprb"><strike id="yhprb"></strike></delect><dfn id="yhprb"></dfn><dfn id="yhprb"></dfn><s id="yhprb"><noframes id="yhprb"><small id="yhprb"><dfn id="yhprb"></dfn></small><dfn id="yhprb"><delect id="yhprb"></delect></dfn><small id="yhprb"></small><dfn id="yhprb"><delect id="yhprb"></delect></dfn><dfn id="yhprb"><s id="yhprb"></s></dfn> <small id="yhprb"></small><delect id="yhprb"><strike id="yhprb"></strike></delect><dfn id="yhprb"><s id="yhprb"></s></dfn><dfn id="yhprb"></dfn><dfn id="yhprb"><s id="yhprb"></s></dfn><dfn id="yhprb"><s id="yhprb"><strike id="yhprb"></strike></s></dfn><dfn id="yhprb"><s id="yhprb"></s></dfn>