ARM base instruction -- ccmp

Conditional Compare (register) sets the value of the condition flags to the result of the comparison of two registers if the condition is TRUE, and an immediate value otherwise.

条件比较(寄存器)如果条件为真,则将条件标志的值设置为两个寄存器的比较结果,否则设置为立即值。

32-bit variant:

CCMP <Wn>, <Wm>, #<nzcv>, <cond>

64-bit variant:

CCMP <Xn>, <Xm>, #<nzcv>, <cond>

ccmp x13, x12, #0x0, ne # 双重比较. 判断 x13 和 x12 同时存在,即都不等于0。将ne设置到标志寄存器。

4037b8: 1100079c add w28, w28, #0x1 // this->argc+1

4037bc: b900527c str w28, [x19, #80] // this->argc++;

4037c0: 3864cb20 ldrb w0, [x25, w4, sxtw] // w0=0=args[i] cpsr=0x80201000 [ EL=0 SSBS SS N ]

4037c4: 7100001f cmp w0, #0x0 // cpsr=0x60201000 [ EL=0 SSBS SS C Z ]

4037c8: 7a440064 ccmp w3, w4, #0x4, eq // eq = none, w3=0xb=size-1, w4=4=i cpsr=0x20201000 [ EL=0 SSBS SS C ]

4037cc: 54fffecd b.le 4037a4 <ferror@plt+0x18c4>

#<nzcv>:

ARM Process state -- PSTATE

ARM Process state -- CPSR

相关推荐
淬渊阁13 小时前
汇编学习结语
汇编·学习
打工人你好14 小时前
VS Code 的 .S 汇编文件里面的注释不显示绿色
汇编
leluckys1 天前
swift-汇编分析多态原理、init
汇编
leluckys2 天前
swift-08-属性、汇编分析inout本质
开发语言·汇编·swift
RaLi和夕2 天前
单片机学习笔记8.定时器
汇编·笔记·单片机·嵌入式硬件·学习
二年级程序员3 天前
51单片机的汇编伪指令
汇编·嵌入式硬件·51单片机
ZzxtEcho4 天前
ARM 汇编启动代码详解:从中断向量表到中断处理
汇编·arm开发
染指11105 天前
6.第二阶段x64游戏实战-分析人物状态
开发语言·汇编·windows·游戏·游戏逆向·x64dbg·x64游戏
Rinai_R5 天前
学习汇编随手记
汇编·学习
矿渣渣6 天前
ARM Cortex-A7处理器中`ISB`汇编指令解析
汇编·arm开发