CALL和jmp近远调用的区别

来源:互联网 发布:java微信群发接口开发 编辑:程序博客网 时间:2024/06/05 23:18

 1. 对于jmp的区别就是:一个是段内调用,一个是段间调用


2. 对于call则有很大的不同,因为call的调用会对栈产生影响:
   (1)call的近调用不会改变使用的栈,但是栈的内容发生了变化:下一条指令被压入栈;如果有参数,参数被压入栈
   (2)call的远调用会改变使用的栈,由于使用的栈发生变化,因此对于参数有一个拷贝的过程。
      保存当前的ss和esp到被调用过程的栈中
      拷贝参数
      保存当前的cs和eip到被调用过程的栈中
     

原创粉丝点击