【任务1】编程序,统计数组array中负数的个数, 并存入count单元中。
data segment
array db -1, 0, 3, -6, 7, 23, 0, -50, 3, 1
count db ?
data ends
【参考解答】
assume cs:code,ds:data
data segment
array db -1, 0, 3, -6, 7, 23, 0, -50, 3, 1
count db ?
data ends
code segment
start:mov ax,data
mov ds,ax
mov si, 0
mov bl, 0
mov cx, 10
lop:cmp array[si], 0 ;逐个考察
jge big ;注意:不是jae!
inc bl ;是负数时计数
big:inc si
loop lop
mov count, bl ;保存结果
mov ax, 4c00h
int 21h
code ends
end start
【任务2】编程序统计数据区BUF中0的个数,并存入RES单元。
data segment
buf db 0,5,0,3,2
res db ?
data ends
【参考解答】
assume cs:code,ds:data
data segment
buf db 0,5,0,3,2
res db ?
data ends
code segment
start:mov ax,data
mov ds,ax
mov cx,5
mov si,offset buf
mov bl,0
lop:mov al,[si]
cmp al,0
jne next
inc bl
next:inc si
loop lop
mov res,bl
mov ax, 4c00h
int 21h
code ends
end start