标志位寄存器PSW
CF ;进位标志位,当进行加(减)法运算后最高位产生进(借)位时则CF置1,否则置0
ZF ;零标志位,当前运算结果为0则ZF置1,否则置0
SF ;符号标志位,与运算结果的最高位相同,运算结果为负则SF置1,否则置0
OF ;溢出标志位,运算结果溢出则OF置1,否则OF置0
PF ;奇偶标志位,运算结果最低16位中1的个数为偶数则PF置1,否则置0
AF ;辅助进位标志
栈操作指令
-- pushfq 压栈指令
pushfq ;将RFLAGS压栈
-- pop 弹栈指令
pop xx ;将栈顶元素弹出到'xx'通用寄存器
跳转指令
-- jmp 跳转指令
jmp xxx ;无条件跳转指令
-- jae 跳转指令
jae xxx ;进行无符号操作数比较后,目标操作数(前)大于原操作数(后)时执行跳转
-- jb 跳转指令
jb xxx ;当CF=1时执行跳转,常用于小于比较
-- jnb 跳转指令
jnb xxx ;当CF=0时执行跳转
-- jne 跳转指令
jne xxx ;当ZF=0时执行跳转
-- js 跳转指令
js xxx ;当SF=1时执行跳转
-- jns 跳转指令
jns xxx ;当SF=0时执行跳转
位操作指令
-- and 二进制与运算指令
and xx,xx ;将两个二进制操作数进行按位与运算
-- or 二进制或运算指令
or xx,xx ;将两个二进制操作数进行按位或运算
-- not 二进制非运算指令
not xx ;将二进制操作数进行按位取反运算
-- shr 二进制右位移指令
shr xx,n ;将通用寄存器操作数向右移动n位,将最后移出的一位写入CF中
-- shl 二进制左位移指令
shl xx,n ;将通用寄存器操作数向左移动n位,将最后移出的一位写入CF中
-- rol 二进制循环左移指令
rol xx,n ;将通用寄存器操作数向左移动n位,流程是每次所有位向左移动都将最高位复制到进位标志和最低位
运算指令
-- dec 减1指令
dec xx ;将通用寄存器的值减1,影响很多标志位除了CF进位标志
标签:操作数,运算,--,xx,指令,跳转,相关,ASM
From: https://www.cnblogs.com/kaaker/p/asm.html