CMP op1, #value
其中:
> op1 |
包含第一個運算元的暫存器 |
value |
8 位立即數,代表第二個運算元 |
此格式的 CMP 指令從 op1 減去 value,並更新條件標誌。這樣便能有效比較 op1 包含的值與 value。根據產生的條件標誌值,會執行一些後續的指令。
N |
Z |
C |
V |
Q |
S |
I |
F |
T |
M |
M |
M |
M |
|
|
|
|
|
15 |
14 |
13 |
12 |
11 |
10 |
|
8 |
7 |
|
0 |
0 |
0 |
1 |
0 |
1 |
op1 |
value |
1 ;@.text
2 ;@.globl funcmp
3 ;@.align 0
4 ;
5 AREA example,CODE,READONLY
6 CODE16
7
8 label1
9 ; Compare contents of R6 with 24
10 ; Does R6-24, and ignores result
11 ; Set Condition Codes
12 ; Branch to new label if negative
13 00000000 F7C6 MOV R6, #Ox10
14 00000002 2E18 CMP R6, #24
15 00000004 D400 BMI label2