call指令经常跟ret指令配合使用,因此CPU执行call指令,进行两步操作:

将当前的 IP 或 CS和IP 压入栈中;

转移(jmp)。

call指令不能实现短转移,除此之外,call指令实现转移的方法和 jmp 指令的原理相同。

    call 标号(近转移)

CPU执行此种格式的call指令时,相当于进行 push IP jmp near ptr 标号

call far ptr 标号(段间转移)

CPU执行此种格式的call指令时,相当于进行:push CS,push IP jmp far ptr 标号

    call 16位寄存器

CPU执行此种格式的call指令时,相当于进行: push IP jmp 16位寄存器

call word ptr 内存单元地址

CPU执行此种格式的call指令时,相当于进行:push IP jmp word ptr 内存单元地址

参考资料:<<汇编语言>> 王爽

汇编语言--call 指令相关推荐

  1. leaq c 汇编语言,汇编语言lea指令使用方法解析

    这篇文章主要介绍了汇编语言lea指令使用方法解析,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友可以参考下 lea指令变种(按大小分类): leaw #2个字节 ...

  2. 汇编语言中xor指令_汇编语言XOR指令:对两个操作数进行逻辑(按位)异或操作(推荐)...

    汇编语言 汇编语言(assembly language)是一种用于电子计算机.微处理器.微控制器或其他可编程器件的低级语言,亦称为符号语言.在汇编语言中,用助记符代替机器指令的操作码,用地址符号或标号 ...

  3. linux汇编 lea,汇编语言lea指令使用方法解析

    这篇文章主要介绍了汇编语言lea指令使用方法解析,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友可以参考下 lea指令变种(按大小分类): leaw #2个字节 ...

  4. 汇编语言常用指令汇总(持续更新)

    汇编语言常用指令汇总(持续更新) 通用数据传送指令 累加器专用指令 有效地址送寄存器指令 标志寄存器传送指令 加法指令 减法指令 乘法指令 除法指令 逻辑指令 移位指令 通用数据传送指令 MOV(Mo ...

  5. 汇编语言--loop指令

    loop指令为循环指令,所有的循环指令都是短转移,在对应的机器码中包含转移的位移,而不是目的地址. 对IP的修改范围都为-128~127. 指令格式:loop 标号 ((cx) = (cx) - 1, ...

  6. 汇编语言--jcxz指令

    jcxz指令 jcxz指令为有条件转移指令,所有的有条件转移指令都是短转移, 在对应的机器码中包含转移的位移,而不是目的地址.对IP的修改范围都为-128~127. 指令格式:jcxz 标号(如果(c ...

  7. 汇编语言--mul 指令

    mul是乘法指令,使用 mul 做乘法的时候:相乘的两个数:要么都是8位,要么都是16位. 8 位: AL中和 8位寄存器或内存字节单元中: 16 位: AX中和 16 位寄存器或内存字单元中. 结果 ...

  8. 汇编语言AND指令:对两个操作数进行逻辑(按位)与操作

    AND 指令在两个操作数的对应位之间进行(按位)逻辑与(AND)操作,并将结果存放在目标操作数中: AND destination,source 下列是被允许的操作数组合,但是立即操作数不能超过 32 ...

  9. 汇编语言---乘法指令及符号扩展

    汇编语言---有符号数乘法指令 介绍 格式及功能介绍 无符号数乘法指令 有符号数乘法指令 符号扩展及符号扩展语句 符号扩展 符号扩展语句 例子 无符号相乘 有符号数相乘 这是本文的重点: 有符号数相乘 ...

最新文章

  1. relu函数_从 ReLU 到 GELU,一文概览神经网络的激活函数
  2. 解决安装python第三方模块 '-mno-cygwin'报错的问题
  3. java Date days_Java中的LocalDate plusDays()方法
  4. sed教程(七)之特殊字符
  5. 【数据库】数据库的四个基本概念Data DB DBMS DBS
  6. 全国计算机等级考试题库二级C操作题100套(第97套)
  7. Android Proguard Questions
  8. mysql的设计模式_数据库设计中使用设计模式
  9. jni开发-CmakeList详解
  10. [转载] python处理数据列_Python中基于跨列的数据处理
  11. 基于linux的进程调度模拟程序,2011180021_Linux操作系统_课程设计报告_基于Linux的进程调度模拟程序...
  12. SQL练习:查询各科成绩前三名的记录
  13. 教你制作Linux系统的安装盘
  14. Prumo、bp和西门子与SPIC就巴西能源项目达成合作伙伴关系
  15. ibm tivoli_带有Tivoli Access Manager的SAP NetWeaver Application Server ABAP的单点登录
  16. xpad如何改变字体主题
  17. 壳牌shell气化炉结构_壳牌Shell气化炉正常操作.pdf
  18. 储能系统集成解决方案
  19. 第四范式完成C+轮融资,投后估值约20亿美元
  20. 危机!感觉Python开发者要失业了

热门文章

  1. 【运筹学】线性规划 单纯形法 ( 基矩阵 | 基变量 | 非基矩阵 | 非基变量 | 矩阵分块形式 | 逆矩阵 | 基解 | 基可行解 )
  2. 【Java 并发编程】CountDownLatch 使用场景示例
  3. layui d多文件上传
  4. hdu2041java
  5. 说说第三方支付接口开发及开发中遇到的坑爹问题
  6. mysql,int(5)、int(10)啥区别联系
  7. Win32中GDI+应用(三)---Graphics类
  8. UVALive 4216 Pole Position
  9. ubuntu搭建tiny4412环境【学习笔记】
  10. python中文字符编码问题