Czy można wrzucić nową wartość na wskaźnik stosu?
Asembler stos, krótkie zapytanie
- Rejestracja: dni
- Ostatnio: dni
- Postów: 5046
0
Nie rozumiem. Chcesz zmienić wskaźnik do stosu, czy chcesz dodać wartość na stos?
- Rejestracja: dni
- Ostatnio: dni
- Lokalizacja: Space: the final frontier
- Postów: 26433
1
Tzn chcesz zmienić najwyższy element stosu? Zrób pop + push ;] Mozesz też zawsze zrobić mov [esp]:cośtam jak chcesz.
- Rejestracja: dni
- Ostatnio: dni
1
Chyba, że chciałeś zmienić położenie stosu tymczasowo to:
push ebp
mov ebp, esp // zapamiętanie adresu stosu
mov eax, 0xdeadcode // nowy adres stosu, np. jakiś buffor pamięci
mov esp, eax
push ebx // operacje na nowym stosie
pop ecx
mov esp, ebp // przywrócenie stosu
pop ebp