词条 | PUSHAD |
释义 | 汇编语言传送指令之一,与它相关的指令还有PUSHA,POPA/POPAD.它们配合使用用于8个16位/32位通用寄存器与堆栈之间的数据传送. PUSHAD指令压入32位寄存器,使他们按照EDI,ESI,EBP,ESP,EBX,EDX,ECX,最后是EAX的顺序出现在堆栈中。 要注意,PUSHA/PUSHAD,POPA/POPAD从80286处理器开始使用.执行PUSHA/PUSHAD,POPA/POPAD时,其堆栈指针SP将分别需要减16/32和加16/32. PUSHAD POPAD不会影响ESP ' OperandSize 32 (* PUSHAD instruction *) ' THEN ' Temp (ESP); ' Push(EAX); ' Push(ECX); ' Push(EDX); ' Push(EBX); ' Push(Temp); ' Push(EBP); ' Push(ESI); ' Push(EDI); ' ELSE (* OperandSize 16, PUSHA instruction *) ' Temp (SP); ' Push(AX); ' Push(CX); ' Push(DX); ' Push(BX); ' Push(Temp); ' Push(BP); ' Push(SI); ' Push(DI); ' FI |
随便看 |
百科全书收录4421916条中文百科知识,基本涵盖了大多数领域的百科知识,是一部内容开放、自由的电子版百科全书。