汇编语言高手请进!帮小弟个忙.

来源:百度知道 编辑:UC知道 时间:2024/05/16 05:01:07
不知哪位好心的高人能否帮我看看这两个题该如何解答,先谢了!
1、今有以下程序段,试分析执行该程序段的功能。
CLD
LEA DI,[0404H]
MOV CX,0080H
XOR AX,AX
REP STOSW

2、编程题
要求计算两个多字节16进制数之和;3B74AC60F8H+20D59E36C1H=?式中被加数、相加数均有五个字节,可以编一个循环程序实现以上运算。假设已将被加数和加数分别存入从DATA1和DATA2开始的两个内存区,且均为低位字节在前,高位字节在后。要求相加所得结果仍存回以DATA1为首址的内存区。
哥哥,你真的很厉害,如若可以的话,还有点其它的内容,能否帮我看看,我已经留言了,谢谢!

1.该程序段的功能 80H=128D,128*2=256 字节(Bytes)
将当前特别段(ES:),从内存偏移404H处开始的256个字节,全部清零。
2、编程题
DATA SEGMENT ;定义数据段
DATA1 DB 0F8H,60H,0ACH,74H,3BH ;被加数
DATA2 DB 0C1H,36H,9EH,0D5H,20H ;加数
DATA ENDS ;数据段结束
CODE SEGMENT ;定义代码段
ASSUME CS:CODE,DS:DATA
START:
MOV AX,DATA
MOV DS,AX ;初始化DS
MOV CX,5
MOV SI,0
CLC
next:
MOV AL,DATA2[SI]
ADC DATA1[SI],AL
INC SI
loop next
MOV AH,4CH
INT 21H

CODE ENDS
END START