1、Win 32平台汇编指令Push eax使堆栈指针移动几字节?
2、汇编指令pushad执行后会将几个寄存器的值压入堆栈?
3、执行pushad指令前ESP=0013FFC4,执行后的ESP值是多少?
1、Win 32平台汇编指令Push eax使堆栈指针移动几字节?
2、汇编指令pushad执行后会将几个寄存器的值压入堆栈?
3、执行pushad指令前ESP=0013FFC4,执行后的ESP值是多少?
1.会使ESP-4
2.PUSHAD指令在堆栈中按顺序压入下列寄存器:
EAX,ECX,EDX,EBX,ESP,EBP,ESI和EDI
3 esp-20=13ffa4
1. eax是32位,也就是4个字节,所以ESP会减4
2.EAX - ECX - EDX - EBX - ESP - EBP - ESI - EDI(进栈顺序最先是EAX,最后是EDI)
3.0013FFC4 - (4*8十进制32) = 0013FFC4 - (20十六进制) = 0013ffa4