| |
比较和比较负值
格式
CMP Rn,#expr
CMP Rn,Rm
CMN Rn,Rm
其中:Rn 第1操作数寄存器
expr 表达式,其值为0~255范围内的整数
Rm 第2操作数寄存器
用法
这些指令更新条件码标志,但不往寄存器中存放结果。
CMP指令从Rn的值中减去expr或Rm的值,根据结果设置条件码标志位,而Rn中的内容不变。
CMN指令将Rm和Rn的值相加,根据结果设置条件码标志位,Rm和Rn的内容不变。
注意事项
对于“CMP Rn,#expr”和CMN指令,Rn和Rm必须在R0~R7范围内。对于“CMP Rn,Rm”指令,Rn和Rm可以是R0~R15中的任何寄存器。这些指令根据结果更新标志N、Z、C、V。
例子
CMP R2,#255
CMP R7,R12 ;指令“CMP Rn,Rm”允许高寄存器
CMP R1,R5
凌阳教育,专注嵌入式人才培养多年,完善的培养方案,强大的师资,合理的课程安排,成功从小白蜕变为嵌入式工程师。想了解凌阳教育,或者获得更多嵌入式学习资料的免费下载,请点击www.sunplusedu.com访问凌阳教育官网