PUSH reg {, reglist }
其中:
reg |
要載入的有效暫存器,範圍是 [R0..R7] |
N |
Z |
C |
V |
Q |
S |
I |
F |
T |
|
|
|
|
|
|
|
|
|
15 |
14 |
13 |
12 |
11 |
10 |
9 |
8 |
7 |
|
0 |
1 |
0 |
1 |
1 |
0 |
1 |
0 |
R |
reglist |
1 ;@.text
2 ;@.globl funpush
3 ;@.align 0
4 ;
5 AREA example,CODE,READONLY
6 CODE16
7
8 label1
9 ; Push a block of registers onto the
10 ; stack.Registers are pushed onto
11 ; the stack in reverse numerical,
12 ; not listed, order to comply with POP.
13 ; Highest numbered register to
14 ; lowest.So pushing order is LR,R7,
15 ; R6,R5,R4,R2, then R1.
16 ; SP is decremented as normal
17 ; by 28 bytes.
18 00000000 B5F6 PUSH {R2,R4-R7,LR,R1}
19
20
21
22 ; Push a block of registers
23 ; R1,R2,R3,R4 onto stack.
24 ; Push order is R4,R3,R2, then R1.
25 ; SP is decremented as normal
26 ; by 16 bytes.
27 00000002 B41E PUSH {R1-R4}