SUB
作者:Vesper Vei
1 分钟阅读
目录
SUB(sub)
基本作用
SUB 指令执行减法,将 x1 - x2 的结果写回 x1。
指令格式
sub x1, x2x1 = x1 - x2x1、x2 可以是:
- 寄存器
- 内存
- 立即数
限制:
- 两者不能同时是内存
指令执行过程
x1 ← x1 - x2EFLAGS ← 根据结果更新影响的标志位:
- OF(有符号溢出)
- SF(符号)
- ZF(结果是否为 0)
- CF(用于判断是否借位)
- AF、PF
示例
sub eax, ebxsub rax, 0x100sub [rbp-0x4], 1等效展开
sub rax, rbx; 等价于tmp = rax - rbxrax = tmp更新 EFLAGS常见用途
- 自减、循环计数
- 栈指针上移(如 sub 操作的逆过程)
- 数值计算
- 地址偏移(如从结构体中向后移动)