您的位置 首页 产品

第12章 用到栈的跳转(X86汇编教程)

本X86汇编教程目录http:www51heicommcu2619html用过高级语言的同学都知道高级语言有函数概念可以跳转到某地方执行代码计

X86汇编教程目录http://www.51hei.com/mcu/2619.html

用过高档言语的同学都知道.高档言语有函数概念.能够跳转到某当地履行代码核算一些东西,核算完结后能够回来原处持续履行代码.现在咱们要用汇编完结这个了…嘛

办法是这样的:在跳转前,先把IP寄存器的值压入堆,然后跳转,核算后要回来再出栈到IP即可.是不是觉得略微费事了点?其实8086供给了相关指令,帮咱们轻松完结:


指令名 :CALL

指令阐明 :和JMP相同,只是在跳转前会把当时地址压栈,便利回来


指令名 :RET

指令阐明 :没有操作数,指令履行作用相当于POP IP,也便是回来


实例代码:
JMP START;跳转到代码开端处
AXQingLing:;这里是”AX清零函数”的起点(其实便是个标号)
MOV AX,0000H;AX清零
RET;回来
START:;代码开端
MOV AX,1234H;往AX随意写个数字
CALL AXQingLing;调用”AX清零函数”(其实便是个跳转)
;代码到此结束

请把我的实例编译后放进Debug试试吧.

作业:在我的实例中增加个”BX和CX一同清零函数”,并在我的实例中”调用AX清零”之后”调用”一次,(记得用RET回来啊…)

声明:本文内容来自网络转载或用户投稿,文章版权归原作者和原出处所有。文中观点,不代表本站立场。若有侵权请联系本站删除(kf@86ic.com)https://www.86ic.net/xinpin/chanpin/317307.html

为您推荐

联系我们

联系我们

在线咨询: QQ交谈

邮箱: kf@86ic.com

关注微信
微信扫一扫关注我们

微信扫一扫关注我们

返回顶部