無名

大猫咪与小狮子

导航

汇编 & 寄存器 总结

  1. 栈为什么从高地址向地址增长,
    因为更好的利用内存, 一个从高往低,一个从低往高,最终内存被充分利用
  2. pop 与 push 指令都是堆栈顶指针的操作

pop 栈顶指针esp增加,弹出栈中内存数据到寄存器
push 栈顶指针esp减小, 将寄存器(或许指定的数据)中的数据写入到栈内存

  1. call 指令
    call 指令将call 下一条指令的地址压入栈
    跳转到函数地址处
    call = push + jmp

  2. ret 指令
    pop eip
    jmp eip

  3. 几个JCC 指令
    ja : Jump Above, 表示大于的时候跳转
    jna : Jump Not Above,表示 小于或许等于跳转
    jb : Jump Below, 表示小于时跳转
    jnb: Jump Not Below, 表示大于时跳转
    je : Jump Equal, 表示等于时跳转
    jne : Jump Not Equal, 表示不等于时跳转

posted on 2023-10-21 13:43  xiezhengcai  阅读(2)  评论(0编辑  收藏  举报