| 网站首页 | 文章中心 | 电子书下载 | 矢量图库 | 视频教程 | 素材下载 | 程序代码下载 | JS代码 | 论坛 | 
常用软件类:
|杀毒安全 |联络聊天 |网络软件 |多媒体类 |系统工具 |图形图像 |系统工具 |应用软件 |行业软件
开发设计类:
|动画制作 |图像处理 |3D设计 |操作系统 |站长学院 |网络相关 |WEB设计 |数据库类 |程序开发
汇编语言---程式设计 (5)
作者:未知    文章来源:网络    点击数:    更新时间:2006-7-19
  ;   STORE1      ;继续 
   25: RECEND: 
   26:        RET 
    程式的变化无穷无尽,尤其是用组合语言写作程式,简直没有止境。只要稍稍用点心,加一点点变化因素,一个巧妙无比的程式,就会跃然而出。 
    写程式的乐趣,就在于心智的投入。学者们不妨试着把这      式再加以改良,其中还有不少可以下手的地方,养成习惯以后,程式自然就会精简了。 

八、预置法 

    预置法适用于流程的安排,尤其是在不确定的情况下,有时需要作多项检查,不仅浪费时间,对空间也不利。 
    例如有一段程式,其目的在于处理使用者所选择的流程。由于使用者事先通过介面程式,选妥各项工作,现在必须依某一顺序执行。 
    这是一项难度相当大的工作,要执行固定顺序不难,下面的程式就可以达到目的。当然,一如既往,我们会尝试着将程式一再改进。最后,我们再来讨论如何能执行使用者所安排的顺序。 
    设子流程有八种,使用者选用时,可令BX值等于子程式的代号。选用方式为「开关式」,即单数次为开,设定参数,复数次为关,取消设定。 
    设定后,因为共有八种程式,可以用八个位元来设置所需要执行的旗号。当然,这要看程式的多少而定,八位元正好用一个旗号FLAG: 
    1: SETUP: 
    2:        CMP    BX,MAXVAL    ; 最大值检查 
    3:        JA    SETRET        ; 超过,无效 
    4:        SHL    BX,1        ; 参数乘2 
    5:        JMP    SUBTB[BX]    ; 各种程式 
    6: SUBTB    DW    SUB1        ; 各种程式 
    7:        DW    SUB2        ; 程式中设定 
    8:        ..            ; flag 
    9:        DW    SUBN 
   10: ENTER: 
   11:        SHR    FLAG,1        ; 检查FLAG 
   12:        JNC    ENTER1 
   13:        CALL    SUB1        ; 有设定 
   14: ENTER1: 
   15:        SHR    FLAG,1 
   16:      &n

上一页  [1] [2] [3] [4] [5] [6] [7] [8] [9] [10]  ... 下一页  >> 


相关文章