PUSHAD和POPAD,以及PUSHA和POPA
生活随笔
收集整理的這篇文章主要介紹了
PUSHAD和POPAD,以及PUSHA和POPA
小編覺得挺不錯的,現在分享給大家,幫大家做個參考.
PUSHAD
PUSHAD也叫保護現場,就是把我們的寄存器壓入棧中
pushad是把eax,ecx,edx,ebx,esp、ebp,esi,edi依次壓入棧中,ESP會減少32,相當于:
就是我們在OD的寄存器窗口,看到的寄存器順序,按照由上往下的順序,依次壓入棧,我們觀察一下EDI的值,
此時棧頂值為:
執行pushad這條語句,棧頂值變成EDI的值了
POPAD
POPAD也叫還原現場,將棧中存儲的寄存器值返還給寄存器
與PUSHAD順序相反,將棧中數據彈出,依次傳給EDI、ESI、EBP、ESP、EBX、EDX、ECX、EAX
相當于依次執行:
PUSHA和POPA
PUSHA和POPA是操作16位寄存器的,功能與PUSHAD和POPAD相同
PUSHA相當于
POPA相當于依次執行:
pop di pop si pop bp pop sp pop bx pop dx pop cx pop ax總結
以上是生活随笔為你收集整理的PUSHAD和POPAD,以及PUSHA和POPA的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: 丁丁小姐剧情介绍
- 下一篇: MOVSX和MOVZX