在彙編編程中完成堆棧操作(如push和pop)後,是否可以獲得堆棧的有效起始地址?在彙編編程中獲取堆棧的起始地址
2
A
回答
1
約定是在函數的開頭將(E)SP保存到(E)BP,並使用(E)BP作爲局部變量尋址。
0
最簡單的情況就是將初始堆棧指針保存到某些需要時訪問它的變量。如果不是這種情況,請使用特定於平臺的API,例如Windows上的VirtualQuery,使用當前的SP值作爲第一個參數。基地址將在MEMORY_BASIC_INFORMATION結構的BaseAddress字段中。使用pthread函數可以完成posix任務
+0
請編輯並清理Windows與Posix。我解決了第一個問題... – bmargulies 2010-03-01 14:08:48
+0
請你解釋一下如何在MASM上完成... – 2010-03-01 16:26:02
相關問題
- 1. 彙編堆棧索引地址
- 2. 彙編程序中的兩個堆棧?
- 3. 堆棧在NASM彙編
- 4. 獲取彙編64的argv [2]地址
- 5. 彙編語言 - 堆棧機
- 6. 彙編堆棧3函數
- 7. 彙編堆棧指針AVR
- 8. 彙編堆棧訪問
- 9. 彙編堆棧持久性
- 10. 彙編級編程中的堆棧指針
- 11. 獲取當前進程的堆的起始地址?
- 12. 內聯彙編程序獲取指針Visual Studio的地址
- 13. 在MIPS彙編中獲取地址超出範圍?
- 14. 獲取線程起始地址
- 15. 如何以編程方式獲取Linux上堆的地址
- 16. 內聯彙編-cdecl和堆棧準備
- 17. ARM彙編 - 監視器堆棧指針
- 18. 瞭解彙編堆棧操作
- 19. 6502彙編 - RTS命令和堆棧
- 20. x86彙編,堆棧推入指令
- 21. 彙編堆棧管理通過%esp
- 22. MIPS彙編子程序和堆棧,異常5壞數據地址,異常7存儲地址錯誤
- 23. dword和彙編程序中的'堆棧'有什麼區別
- 24. 在彙編中計算有效地址
- 25. MC68k彙編程序地址語法
- 26. 如何獲取基址堆棧指針的地址
- 27. 獲取Shpping地址郵編
- 28. GNU彙編:獲取標籤/變量的地址[Intel語法]
- 29. 關於堆棧指針的簡單彙編程序問題
- 30. 編程方式獲取堆棧轉儲中顯示的Java監視器的地址?
你的意思是起始地址(即基地址,它沒有改變),還是你真的指棧頂的地址,即堆棧指針的當前值? – 2010-03-01 13:54:27
的起始基地址...甚至堆棧的頂部將盡...但最好基地址 – 2010-03-01 13:55:20
基地址不會改變 - 這是堆棧指針開始在你的程序開始。堆棧地址的頂部是按下/彈出時會發生什麼變化。你究竟想要哪一個? – 2010-03-01 13:57:33