标签:style blog http color ar os sp 数据 div
进入DEBUG后,首先用命令R查看当前DS内容,记录此值,假设为X。在DEBUG下汇编、调试完成下列功能的程序。
1):将内容F000:2000H起30H个字数据传送到内存X:1000H开始处
这里是把一个单元的数据复制到另外的单元,而且是连续的数据,所以肯定要用到循环,由于这两个DS内容的不同,所以再进行复制的时候,要对ds进行复制操作,具体的看如下的代码。
1 MOV CX,30 2 MOV SI,2000 3 MOV DI,1000 4 AGAIN:MOV BX,F000 5 MOV DS,BX 6 MOV AX,[SI] 7 MOV BX,073F 8 MOV DS,BX 9 MOV [DI],AX 10 INC DI 11 INC SI 12 LOOP AGAIN 13 INT 3
2)测试内存X:300H开始的10H个字节数据,计算其中正数、负数、0的个数,并将结果分别存放在X:400H开始的三个内存单元中
这里是统计连续单元里面的整数,负数,0的个数。可以直接用cmp,0 进行比较,如果 ==0 则跳转 JE,如果大于0 则跳转 JG,如果小于0,则跳转 JL。同时也需要loop
我用si,di,dx来分别统计0,正数,负数的个数。具体看代码。
1 MOV CX,10 2 MOV BX,300 3 MOV AX,[BX] 4 X :INC BX 5 CMP AX,0 6 JE X1 7 JG X2 8 JL X3 9 X1:INC SI 10 JMP X4 11 X2:INC DI 12 JMP X4 13 X3:INC DX 14 JMP X4 15 X4:LOOP X 16 MOV BX,400 17 MOV [BX],SI 18 INC BX 19 MOV [BX],DI 20 INC BX 21 MOV [BX],DX 22 INT 3 23
标签:style blog http color ar os sp 数据 div
原文地址:http://www.cnblogs.com/chujian123/p/4073627.html