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

汇编语言程式设计:第六节 特殊技巧的运用

来源:Http://myeducs.cn 联系QQ:点击这里给我发消息 作者: 用户投稿 来源: 网络 发布时间: 12/10/18
下载{$ArticleTitle}原创论文样式
是否有可能,直截了当,就把资料依据大小,予以定位,一次排好?
    电脑的好处,就在于资料的规律性,我们理应利用这种优点,来找出其排序的模式。
    前例曾分为两个模式,一是查找,一是搬移。如果我们把查找改为记录,把搬移改为安排,则情形就大大的不同了。
    记录时利用间接定址技巧,每笔取到的资料,皆可视为一个数值,对应于一记录的缓冲区。如果资料中每笔资料总值大于256 且小于 65536,则可以用二字元记录之。再若资料为二进位值,可由 0至 255,即设 512个对应单位。
    假定原资料在 DS:SI中,长度在CX中。
    首先,设一记录区为:
    1: RECORD    DB    512 DUP (0)
    2:        PUSH    SI      ;程式开始
    3: CHECK:
    4:        LODSB          ;取资料,AH永远为0
    5:        MOV    BX,AX      ;利用BX间接定址
    6:        INC    WORD PTR RECORD[BX]
    7:        LOOP    CHECK
    8: STORE:
    9:        MOV    SI,OFFSET RECORD+512;指向最
                        ;后记录
   10:        MOV    BP,OFFSET RECORD    ;供检查
   11:        POP    DI      ;资料贮存处
   12: STORE1:
   13:        CMP    SI,BP      ;查是否完毕?
   14:        JE    RECEND      ;完成
   15:        DEC    SI      ;向上取
   16:        DEC    SI
   17:        MOV    CX,[SI]   ;取记录值
   18:        JCXZ    STORE1      ;无记录,重取
   19: 
  • 上一篇资讯: 不再疑惑,汇编之后
  • 下一篇资讯: D/A、A/D闭环测试
  • 网学推荐

    免费论文

    原创论文

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