目录
一.push和pop指令
1.push+立即数
运行前
运行后
可以得出结论是正确的,地址减4。
2.push+16位寄存器/word
运行前
运行后
3.push+32位寄存器/dword
运行前
运行后
4.pop+……
二.pushad和popad
pushad运行前
运行后
可以发现 eax,ecx,edx,ebx,esp、ebp,esi,edi中的值被压入栈中。
popad运行前
运行后
可以看见这些值又返回了。
三. 标志寄存器
1.进位标志CF
运行前
运行后
可以发现CF并没有发生变化,这是因为最高位没有 发生变化。
运行前
运行后
这个时候CF的值变成了1,因为这是8位,最高位发生变化。
2.奇偶标志PF
运行前
此时,eax中的值末尾为3。
加3之后,为6,是1的偶数,所以P的值变为1。
3.辅助进位标志AF
运行前
运行后
4.零标志ZF
5.符号标志SF
6.溢出标志OF
规律
运行前
运行后
因为7F为最大的数,所以加2后变为负数,溢出。