MRA[ condition ] op1 , op2 , acc0
其中:
condition |
16 個條件之一。請參閱條件程式碼狀態。 |
acc0 |
40 位累加器 |
op1 |
指定內部累加器的低 32 位的暫存器 |
op2 |
指定內部累加器的高八位的暫存器 |
指令 MRA 執行以下操作:
if ConditionPassed ( condition ) then
使用 MRA 指令將 40 位累加器的值移入兩個暫存器。累加器值的位 [31:0] 移入暫存器 op1。40 位累加器的值的位 [39:32] 按照符號擴充套件方式擴充套件成 32 位。隨後這些位移入暫存器 op2。指令中指定的條件必須與條件程式碼狀態匹配;否則不執行指令。此指令可以在任何處理器模式中執行。
無
31 |
|
28 |
27 |
26 |
25 |
24 |
23 |
22 |
21 |
20 |
19 |
|
16 |
15 |
|
12 |
11 |
10 |
9 |
8 |
7 |
6 |
5 |
4 |
3 |
2 |
1 |
0 |
condition |
1 |
1 |
0 |
0 |
0 |
1 |
0 |
1 |
op2 |
op1 |
0 |
0 |
0 |
0 |
0 |
0 |
0 |
0 |
0 |
0 |
0 |
0 |
1 ;@.text
2
3 ;@.globl funcmra
4
5 ;@.align 0
6
7 ;@ * * * MRA * * *
8
9
10 AREA example, CODE, READONLY
11
12 00000000 E3A0000A MOV R0, #10
13 00000004 E3A01001 MOV R1, #1
14 00000008 E3A02001 MOV R2, #1
15
16 00000012 E2A20001 ADC R0, R2, #1
17
18 00000016 EC510000 MRA R0, R1, acc0
19
20 END