1、使用3种方式实现:pushecx
mov ebx,0012ffc4 //栈顶
mov edx,0012ffe4 //栈底
sub ebx,4
mov dword ptr ds:[ebx],ecx
mov dword ptr ds:[ebx-4],ecx
sub ebx,4
lea ebx,dword ptr ds:[ebx-4]
mov dword ptr ds:[ebx],ecx
2、使用3种方式实现:pop ecx
mov ecx,dword ptr ds:[ebx]
add ebx,4
lea ebx,dword ptr ds:[ebx+4]
mov ecx,dword ptr ds:[ebx-4]
mov ecx,dword ptr ds:[ebx]
lea ebx,dword ptr ds:[ebx+4]
3、用两种方式实现 push esp
Mov ebx,esp
Mov dword ptr ds:[ebx],esp
Sub ebx,4
Mov esp,ebx
Mov ebx,esp
Mov dword ptr ds:[ebx-4],ebx
Sub esp,4
4、用两种方式实现 pop esp
Mov ebx,esp
mov esp,dword ptr ds:[ebx]
5、 使用EBX存储栈底地址,EDX存储栈顶地址,连续存储5个不同的数
MOV EBX,ESP
MOV EDX,EBP
MOV DWORD PTR DS:[EBX-4],111111>
SUB EBX,4
MOV DWORD PTR DS:[EBX-4],222222>
SUB EBX,4
MOV DWORD PTR DS:[EBX-4],333333>
SUB EBX,4
MOV DWORD PTR DS:[EBX-4],444444>
SUB EBX,4
MOV DWORD PTR DS:[EBX-4],555555>
SUB EBX,4