多做题,通过考试没问题!

汇编语言程序设计

睦霖题库>大学试题(计算机科学)>汇编语言程序设计

数组LIST1内存有20个非压缩BCD码表示的单字节十进制数,写出完整程序,求这20个BCD数之和,结果(非压缩BCD码)存入SUM1双字单元。

正确答案: CODESEGMENT
ASSUME CS:CODE
LIST1DB “6705762998”;20个非压缩BCD数
DB “4322687310”SUM1DD ?;存放结果(20个数之和)
START:XOR AX,AX;累加器清零
MOV CX,20;循环计数器置初值
LEA BX,LIST1;地址指针置初值
ONE://ADD AL,CS:[BX];加入一个非压缩BCD数
AAA;调整,结果在AH(百位、十位),AL(个位)中
INC BX;修改指针
LOOP ONE;循环控制
MOV BYTE PTR SUM1,AL;保存个位
MOV AL,AH
MOV AH,0;百位、十位(二进制)存入AX
AAM;分解百位到AH,十位到AL
MOV WORD PTR SUM1+1,AX;保存百位、十位
MOV BYTE PTR SUM1+3,0;千位清零(和最大为9*20=180)
MOV AX,4C00H
INT 21H
CODEENDS
END START
答案解析:
进入题库查看解析

微信扫一扫手机做题