当前位置: 网学 > 编程文档 > 汇编语言 > 正文

汇编语言 - 程序设计教程(五)

来源:Http://myeducs.cn 联系QQ:点击这里给我发消息 作者: 用户投稿 来源: 网络 发布时间: 12/10/18
下载{$ArticleTitle}原创论文样式
p;    ; 为0则无
   26:        JZ    ENTRET
   27: ENTER1:
   28:        LODSW            ; 取程式资料
   29:        CMP    AX,1        ; 查程式入口
   30:        JB    ENTER1        ; 0表示不做
   31:        JZ    ENTRET        ; 1表示终止
   32:        PUSH    SI
   33:        CALL    AX        ; 执行
   34:        POP    SI
   35:        JMP    ENTER1
   36: ENTRET:
   37:        RET
    前一段调用程式需要31个字元,而现在只要21个字元,速度也快得多。不仅如此,前段程式仅能提供八个子程式,最多用十六位元,不过十六个子程式。本程式则不然,只要预留的缓冲器够,可提供的子程式可以说是无限。
    更重要的功能,是程式执行的顺序。除了这种预置法外,其他的方法,都受限于 SUBTB的安排次序,无法变更。但本方法则完全可任依使用者的需要,来决定子程式执行的顺序,以及是否执行。
    请注意在 SETUP时,BX的参数就同时代表了执行的顺序。如果要想依照设定的次序决定顺序,只要将缓冲区加大,再加一组预设程式即可,如下所示:
    1: SETUP:
    2:        SHL    AX,1        ; 输入参数
    3:        ADD    AX,OFFSET SUBTB ; 子程式入口
    4:        MOV    BX,BUFER-2    ; 位置序数
    5:        SHL    BX,1        ; 指向位置
    6:        MOV    BUFDER[BX],AX    ; 存入缓冲区
    7:        INC    WORD PTR BUFER-2; 序数加一
    8:        RET
    这一来,先调用的程式放在前面,后调用的放在后面,使用者只要知道子程式的代号,就可以随意安排调用。
    甚至于各子程式所需的参数,也可以用类似的方法,预先设置妥当,然后一次取出运用。
    预置法最宜于「用户」接口,而且作为应用程式,既简单又容易,方便灵活。
    比如有一些应用模组,即可应用此方法,分别归类、编号后,书于手
  • 下一篇资讯: 献给汇编语言初学者
  • 网学推荐

    免费论文

    原创论文

    浏览:
    设为首页 | 加入收藏 | 论文首页 | 论文专题 | 设计下载 | 网学软件 | 论文模板 | 论文资源 | 程序设计 | 关于网学 | 站内搜索 | 网学留言 | 友情链接 | 资料中心
    版权所有 QQ:3710167 邮箱:3710167@qq.com 网学网 [Myeducs.cn] 您电脑的分辨率是 像素
    Copyright 2008-2015 myeducs.Cn www.myeducs.Cn All Rights Reserved
    湘ICP备09003080号