CMP[condition] op1, addr_mode
其中:
condition |
16 個條件之一。請參閱條件程式碼狀態。 |
op1 |
包含第一個運算元的暫存器 |
addr_mode |
定址模式 1:數據處理運算元 |
CMP 指令從 op1 減去 addr_mode,並更新條件標誌。這樣便能有效地比較 op1 中包含的值與 addr_mode 中包含的值。根據產生的條件標誌值,會執行一些後續的指令。condition 必須是有效值;否則將指令當作 NOP。
請參閱“定址模式 1 - 數據處理運算元”。
N |
Z |
C |
V |
Q |
S |
I |
F |
T |
M |
M |
M |
M |
|
|
|
|
|
31 |
|
28 |
27 |
26 |
25 |
24 |
23 |
22 |
21 |
20 |
19 |
|
16 |
15 |
|
12 |
11 |
|
0 |
condition |
0 |
0 |
I |
1 |
0 |
1 |
0 |
1 |
op1 |
SBZ |
addr_mode |
1 ;@.text
2
3 ;@.globl funccmp
4
5 ;@.align 0
6
7 ;@ * * * CMP (Addressing Mode 1) * * *
8
9
10 AREA example, CODE, READONLY
11 label1
12 00000000 E3A0B001 MOV R11, #1
13 00000004 E3A0C002 MOV R12, #2
14 00000008 E3A0D003 MOV R13, #3
15 00000012 E35B0001 CMP R11, #1
16
17 00000016 E3A07003 MOV R7, #3
18 00000020 E15D0007 CMP R13, R7
19
20 END