编程求出数组array中存放的十进制数的平均值,并将其输出到屏幕,输出十进制数功能由子程序dispuib实现
array的定义如下:
array db 8,68,15,22,37,6,58,48,96,2
输出格式为: The average of the array is 36
DATAS SEGMENT
;此处输入数据段代码
array db 8,68,15,22,37,6,58,48,96,2
msg db 'The average of the array is:', '$'
average db ?
string =0
DATAS ENDS
STACKS SEGMENT
;此处输入堆栈段代码
STACKS ENDS
CODES SEGMENT
ASSUME CS:CODES,DS:DATAS,SS:STACKS
START:
MOV AX,DATAS
MOV DS,AX
;此处输入代码段代码
mov dx,offset string
mov ah,09h
int 21h
mov bx,offset array
mov al,[bx]
xor ah,ah
mov cx,lengthof array-1
again:
inc bx
mov dl,[bx]
xor dh,dh
add ax,dx
loop again
mov dl,lengthof array
div dl
xor ah,ah
call disp
MOV AH,4CH
INT 21H
disp PROC ;子程序定义,子程序名为disp
;功能:以十进制显示AX寄存器中的数值
PUSH B