Bir .exe dosyasını demonte ettim ve bunu ilk satırı olarak aldım.x86 assemby'de "push ebp" ne anlama geliyor?
push ebp
- Ne anlama geliyor?
- Neden
ebp
? pop
komutu ile bir ilgisi var mı? Demontajda görmeme rağmen!
Bir .exe dosyasını demonte ettim ve bunu ilk satırı olarak aldım.x86 assemby'de "push ebp" ne anlama geliyor?
push ebp
ebp
?pop
komutu ile bir ilgisi var mı? Demontajda görmeme rağmen!push ebp
yığının üzerine registerebp
olan her ne itme anlamına gelir. ebp
yığın işaretçisini sözleşmeyle kaydeder.
Bu
genellikle Belkimov ebp, esp
o ebp
sicil bahsediyor, ardından bir stack frame kurmak için kullanılır?
Bu bir yorum, bir cevap değil. –
EBP kaydının değerini yığının üstüne iter ve çoğunlukla bir stackframe oluşturmak için kullanılır. Pop
yığından bir değer alır.
İtme komutu, bir yazıcının değerini yığının üstüne kaydeder. Değer daha sonra bir pop-komut kullanılarak alınabilir.
Vikipedi Stack (veri yapısı): http://en.wikipedia.org/wiki/Stack_%28data_structure%29
Ayrıca POP EBP ardından MOV ESP, EBP denktir fonksiyonu, sonunda talimat LEAVE görebilirsiniz. Bu yüzden açık bir pop göremeyebilirsiniz. – indiv
Yani, bu demek oluyor ki bütün uygulamalar "ebp" ile devam ediyor "mov ebp, esp" ile başlıyor? –
Çoğu. Değişken adresleme için ebp kaydını kullanan tüm uygulamalar veya çağrı yapan programın yığın çerçevesini geri yüklemesi gerekir. –