汇编编程题1

1设VARY中有一组8位的符号数,编程统计其中 正数、负数、零的个数,分别存 VM、VN、VK变量中。

答:

stack segment para  stack
   dw  20H dup(0)
stack ends
data segment
   vary  db 23h,78h,56h,0abh,00h,0cdh,59h,14h,98h,0efh,00h,0c0h
cnt equ $-vary
vm  db ?
vn  db ?
vk db ?
data ends
code segment
   assume cs:code,ds:data,ss:stack
start: mov ax,data
mov ds,ax
mov bx,0
mov dl,0
lea si,vary
mov cx,cnt
lop1:
cmp byte ptr[si],0
je zero
js lop2
inc bh
jmp  next
lop2:
inc bl
jmp next
    zero:
           inc dl
    next:
           inc si
loop lop1
mov vm,bh
mov vn,bl
mov vk,dl
mov ah,4ch
int 21h
code ends
end start

猜你喜欢

转载自blog.csdn.net/qq_40956679/article/details/80860819