STACKSG SEGMENT STACK 'S' DW 64 DUP('ST') STACKSG ENDS DATA SEGMENT da DW 3,2,6,9,4,8,7,1,5 ;数组 CT EQU ($-da)/2 ;元素个数 DATA ENDS CODE SEGMENT ASSUME CS:CODE, DS:DATA, SS:STACKSG MAIN PROC FAR MOV AX,DATA MOV DS,AX mov di,ct-1 ;外循坏次数 l1: mov cx,di ;内循坏次数 mov bx,0 ;用于数组寻数 l2: mov ax,da[bx] ;两个内存数无法直接比较 cmp ax,da[bx+2] ;比较 jle cont ;小于等于则转到cont继续循环 xchg ax,da[bx+2] ;否则交换两数 mov da[bx],ax cont: add bx,2 ;改变指针 loop l2 dec di ;外循坏改变条件 jnz l1 ;不为0则继续循环 MOV AX,4C00H INT 21H MAIN ENDP CODE ENDS END MAIN |
[技术| 编程·课件·Linux] 为什么debug内存里是乱码
镕羽
· 发布于 2012-09-06 11:34
· 2205 次阅读
转载文章时务必注明原作者及原始链接,并注明「发表于 软院网 RuanYuan.Net 」,并不得对作品进行修改。
你没觉得你的这个“乱码”跟你定义的 WORD型数组的 是一样的吗? 其实 执行 debug maopao.exe 这个命令后 maopao.exe其实还没有执行呢。 要执行后才是排好序的啊。没执行的呢,当然就是你原来定义的数组顺序了。 debug maopao.exe g d XXXX:0000 先用g执行即可然后再查看。 |