MENU

X86_64汇编语言:标志位和条件跳转指令

November 17, 2021 • Read: 78 • Pwn,CTF

这几个东西,当初学汇编的时候没咋认真看,今天整理一下。

在 RE 的 VM 里或者 PWN 的 Fix 里用到都蛮多的。

标志位

  1. 进位标志 CF (Carry Flag)
  2. 零标志 ZF (Zero Flag)
  3. 符号标志 SF (Sign Flag)
  4. 奇偶标志 PF(Parity Flag)
  5. 溢出标志 OF (Overflow Flag)
  6. 辅助进位标志 AF(Auxiliary Flag)
  7. 方向标志 DF(Direction Flag)
  8. 中断允许标志 IF(Interrupt Flag)
  9. 陷阱标志 TF(Trap Flag)

条件跳转指令表

指令助记符检查标记位说明
JZZF == 1等于 0 则跳转
JEZF == 1相等则跳转
JNZZF == 0不等于 0 则跳转
JNEZF == 0不相等则跳转
JSSF == 1符号为负则跳转
JNSSF == 0符号为正则跳转
JP/JPEPF == 1“1”的个数为偶数则跳转
JNP/JPOPF == 0“1”的个数为奇数则跳转
JOOF == 1溢出则跳转
JNOOF == 0无溢出则跳转
JCCF == 1进位则跳转
JBCF == 1小于则跳转
JNAECF == 1不大于则跳转
JNBCF == 0不小于则跳转
JAECF == 0大于等于则跳转
JBECF == 1 或 ZF == 1大于等于则跳转
JNACF == 1 或 ZF == 1不大于则跳转
JNBECF == 0 或 ZF == 0不小于则跳转
JACF == 0 或 ZF == 0大于则跳转
JLSF != OF小于则跳转
JNGESF != OF不大于则跳转
JNLSF == OF不小于则跳转
JGESF == OF大于等于则跳转
JLEZF != OF 或 ZF == 1小于等于则跳转
JNGZF != OF 或 ZF == 1不小于则跳转
JNLESF == OF 且 ZF == 0不小于等于则跳转
JGSF == OF 且 ZF == 0大于则跳转
Archives QR Code Tip
QR Code for this page
Tipping QR Code