英特爾 XScale(R) 技術主題BLX(2) - 帶鏈接與交換的分支

語法

BLX[condition] dest

其中:

 condition

16 個條件之一。請參閱條件程式碼狀態

 dest

目標暫存器

說明

此格式的 BLX 指令將返回地址儲存到“暫存器 14”,並分支到指定的地址 dest(包含 ARM* 或 Thumb* 子例程)。要選擇 ARM 子例程,目標暫存器的位 [0] 需要設定為 0。要選擇 Thumb 子例程,目標暫存器的位 [0] 需要設定為 1。condition 必須是有效值;否則將指令當作 NOP。

定址模式

無運算元。

影響的標誌

N

Z

C

V

Q

S

I

F

T

T

T

T

T

 

 

 

 

M

編碼

31

 

28

27

26

25

24

23

22

21

20

19

 

16

15

 

12

11

 

8

7

6

5

4

3

 

0

 condition

 0

 0

 0

 1

 0

 0

 1

 0

 SBO

 SBO

 SBO

 0

 0

 1

 1

 dest

示例

1                              ;@.text
2
3                              ;@.globlfuncblx2
4
5                              ;@.align 0
6
7                              ;@ * * * BLX(2) * * *
8
9
10                     AREA example, CODE, READONLY
11                     label1
12  00000000    E4107000   LDR   R7, label2
13  00000004    E3A0B001   MOV   R11,#1
14  00000008    E2AB0001   ADC   R0,R11, #1
15
16  00000012    E12FFF37   BLX   R7
17
18  00000016    E3A0B001   MOV   R11, #1
19  00000020    E21B0001   ANDS  R0, R11, #1
20
21                     label2
22                         DCD   0xdeadbeef
23                         DCB   "string"
24  00000037    E12FFF1E   BX    R14
25
26                         END   27

更多資訊

請參閱定址模式 1:數據處理運算元