`
run_xiao
  • 浏览: 194863 次
  • 性别: Icon_minigender_1
  • 来自: 武汉
社区版块
存档分类
最新评论

调用指令(Call)

    博客分类:
  • ASM
 
阅读更多
调用指令分为近(near)调用和远(far)调用。
    如果被调用子程序的属性是近的,那么,CALL指令将产生一个近调用,它把该指令之后地址的偏移量(用一个字来表示的)压栈,把被调用子程序入口地址的偏移量送给指令指针寄存器IP即可实现执行程序的转移。
注意:因为将下一条指令地址入栈了,所以根据ebp访问第一参数时地址要增加四个字节

如果被调用子程序的属性是远的,那么,CALL指令将产生一个远调用。这时,调用指令不仅要把该指令之后地址的偏移量压进栈,而且也要把段寄存器CS的值压进栈。在此之后,再把被调用子程序入口地址的偏移量和段值分别送给IP和CS,这样完成了子程序的远调用操作。远调用指令的堆栈操。
同近调用操作,根据ebp访问第一参数时地址要增加八个字节
分享到:
评论

相关推荐

    CALL调试测试工具,游戏调用CALL工具

    CALL指令在编程语言中通常用于调用子程序或函数,是程序执行流程控制的重要组成部分。这种工具的独特之处在于它不依赖于代码注入,这意味着它不会修改原始代码,从而提供了更安全、更可靠的调试环境。 首先,我们要...

    汇编语言指令大全_详解版

    四、过程调用指令 CALL指令用于调用过程。它将返回地址(通常是下一条指令的地址)压入堆栈,然后跳转到指定的过程执行。过程执行完毕后,通常使用RET(Return)指令从堆栈中弹出返回地址并返回到调用点。 五、标志...

    8086指令 调用子程序指令

    ### 8086指令系统中的调用子程序指令详解 #### 一、引言 在8086微处理器的指令系统中,调用子程序指令是非常重要的组成部分,它允许程序员通过调用预定义的代码块来实现复杂功能,从而简化程序设计并提高代码复用性...

    10-1-4跳转指令应用例.rar

    3. **CALL指令**:子程序调用指令CALL用于调用存储在PLC内存中的子程序。子程序是一段可重复使用的代码,可以执行特定任务,如数据处理、运动控制等。通过调用子程序,主程序可以模块化,提高代码的可读性和复用性。...

    三菱PLC功能指令5566.doc

    子程序调用指令CALL和返回指令SRET则用于模块化编程,通过子程序的调用来实现功能复用。中断返回指令IRET、允许中断指令EI和禁止中断指令DI则用于处理中断事件,确保在中断发生时能够正确响应。 接着,算术运算和...

    易语言注入dll调用call源码

    - "Call"是汇编语言中的指令,用于调用子程序或者函数。在易语言中,也可以使用"调用命令"来实现类似的功能。 - 汇编代码注入通常是DLL注入的一部分,因为某些特定的操作可能需要汇编级别的控制,比如找到内存中的...

    几个PLC功能指令的理解.doc

    子程序调用指令CALL用于调用子程序,配合子程序返回指令SRET使用,可以实现模块化编程,最多支持5级嵌套。比较指令如CMP和ZCP用于比较数值,CMP比较两个数值,ZCP比较一个数值是否在指定的区间内。 理解并熟练运用...

    三菱功能指令108讲借鉴.pdf

    2. 子程序调用指令CALL、SRET,使得程序结构更加模块化,便于代码重用和调试。 3. 中断指令EI、DI、IRET,用于处理实时性要求高的事件响应。 4. 循环指令FOR、NEXT,用于实现循环执行特定任务。 5. 传送指令MOV,...

    汇编语言程序设计第6章PPT学习教案.pptx

    1. **调用指令 CALL**: - **指令格式**:CALL DST,其中DST为目标地址。 - **功能**:保存当前指令的下一条地址到堆栈,然后跳转到DST指定的地址执行。CALL指令支持段内和段间的调用,并有两种寻址方式——直接和...

    第七章 过程程序设计.doc

    - **调用指令CALL**:根据目标地址调用子程序,有直接和间接调用,以及段内和段间调用的不同形式。CALL指令会保存当前程序计数器(IP和CS)。 4. **子程序返回**: - **RET指令**:用于子程序执行完毕后返回调用...

    子程序调用指令的应用举例.rar

    在S7-1200或S7-1500等系列的PLC中,常见的子程序调用指令有“CALL”和“RET”。CALL指令用于调用子程序,而RET指令则用于返回到主程序。 1. **子程序的定义与调用**:子程序是一段独立的程序代码,具有特定功能,...

    EXE-Call.rar_DELPHI调用CALL_call_exe_exe 导出函数_exe调用exe

    这里,我们探讨的主题是“EXE-Call”,即如何在Delphi程序中使用CALL指令来调用其他可执行文件(EXE)中的导出函数,以及反过来,EXE文件如何调用其他EXE。这种技术在网络上的资料相对较少,因此掌握它是提升程序间...

    fanuc机器人培训总结.doc

    7. 调用指令CALL 8. 偏置条件指令OFFSET 9. 工具坐标系调用指令UTOOL_NUM 10. 用户坐标系调用指令UFRAME_NUM 11. 其他指令 备份和加载 FANUC机器人控制器可以使用的备份/加载设备包括: 1. Memory card(MC) 2. ...

    工业机器人-子程序调用指令的应用举例.7z

    这个压缩包文件“工业机器人-子程序调用指令的应用举例.7z”中很可能包含了一些关于如何使用子程序调用指令的实际案例和教程,以帮助用户深入理解和应用这一功能。 子程序(Subprogram)在工业机器人编程中,通常...

    基于Keil 5编写汇编程序,实现进行stm32F103的点灯实验

    - **控制转移指令**:包括无条件转移指令 JMP、条件转移指令 JCC/JCXZ、循环指令 LOOP/LOOPE/LOOPNE、过程调用指令 CALL、子过程返回指令 RET、中断指令 INTn、INT3、INTO、IRET 等。 - **串操作指令**:用于对数据...

    IBM-pc 汇编语言 课后答案

    在IBM-pc 汇编中,通过调用指令CALL实现子程序,用RET返回。循环通常由JMP指令配合计数器完成,条件分支依赖于比较指令和条件跳转指令。 三、内存管理 了解IBM-pc的内存模型至关重要,其采用分段机制,每个段可以...

    Ahurman计算机组成原理试题及答案.pdf

    例如,减法指令SUB R3,R2的执行流程包括取指、执行和检查中断请求等步骤,而子程序调用指令CALL则涉及调用地址的保存和返回地址的处理。 综上所述,这些知识点涵盖了计算机组成原理中的编码、数值计算、错误检测、...

    ASM-SEH-GAME-call.rar_64 汇编seh_SEH_hook game_汇编call_远程call

    SEH_hook game_汇编call_远程call"揭示了本主题的核心内容,即在64位环境下,通过汇编语言(ASM)利用结构化异常处理(SEH)进行游戏相关的钩子(hook)编程,特别是涉及到了远程调用(remote call)和call指令的...

    游戏CALL调试工具

    在IT行业中,"游戏CALL调试工具"是一种专为游戏开发者设计的软件,用于调试游戏程序中的函数调用,特别是那些涉及"CALL"指令的代码段。"CALL"在编程语言中是一个关键的指令,用于执行函数或子程序,并在完成执行后...

Global site tag (gtag.js) - Google Analytics