1. "NOP"(90),NOP指令什么也不操作,直接通过,在进行执行NOP指令的时候,除了EIP的值变换,其他od里面的内容都不会改变.
    1.1 从0040100处开始执行,执行"add eax,0x1"命令,eax寄存器等于3,当执行到中间的时候,除了EIP的值改变以外,其他地方内容都不会改变.
  2. "push" 指令可以把数值,内存地址,内存地址中的值,寄存器中的值,压入栈顶,而pop指令可以把栈顶数据拿出赋值给寄存器中.
  3. "pushad"用于把EAX,ECX,EDX,EBX,ESP,EBP,ESI,EDI,依次压入栈顶位置,"popad"用于把栈顶位置依次放入EDI,ESI,EBP,ESP,EBX,EDX,ECX,EAX.
    3.1 ESP指向栈顶位置

    3.2 执行pushad,ESP被压入后改变.

    3.3 执行popad. ESP值重新还原.
  4. "mov"指令用于把第二个数赋值给第一个数,以下操作是把ecx赋值给eax,把eax赋值到402000内存地址中的值处.