内存中连续存放着10个二进制字节数,每个数的序号依次定义为0,1,…,9。统计每个数中位为1的个数N0,N1,…,N9(均用一个字节表示),然后按序定义将N0至N9存入内存中,最后再用一个字节这10个数中为1的位的总数n(n=N0+N1+…+N9)。
疑问是每条程序的说明该如何书写。
代码:
data segment
d db 10,11,12,13,14,15,16,17,18,19
n db 11 dup (0)
data ends
code segment
assume ds: data,cs: code
start:
mov ax, data
mov ds, ax
mov si,0
mov cx, 10
A:
mov al, d[si]
call count1
mov n[si], bl
add n[10], bl
inc si
loop A
mov ah,4ch
int 21h
count1 proc near
push cx
mov bl,0
mov cx,8
B:
test al,1
jz C
inc bl
C:
shr al,1
loop B
pop cx
ret
count1 endp
code ends
end start
不胜感激!
每行后面用#然后就可以写注释了呀🧐