学习:标志寄存器

前言:跟着shark恒老师一步一步来学习的,毕竟自己完全是0基础,就不直接追求原理了,自己能先记录就好,如果能理解其中的原理那更好


0标识符:为1的时候为溢出

我直接修改当前的EAX寄存器的十六进制为0x7FFFFFFFF,因为这个是有符号位int32中最大的数,如果是0x80000000,那么符号位为0,那么就为负数,如果是负数的话肯定是正数小

再把当前的汇编指令修改为add eax,0x1 把0x1十六进制的数给eax数据寄存器(相当于0x7FFFFFFF + 0x1 7进一 为8 就是0x80000000那么就为),然后我们单步步过,

发现0标志寄存器就为1了,那么就为溢出


P寄存器:奇偶标志,如数据寄存器eax中的十六进制转换为二进制数,其中1的个数,如果1的个数为偶数的话 那么P为1 如果1的个数为奇数的话 那么P为0

猜你喜欢

转载自www.cnblogs.com/zpchcbd/p/12040903.html