已知从BUF开始存放了10个字类型有符号数据,编程求出这10个数中的最大数和最小数(将最大数存入MAX字单元、最小数存入MIN字单元),并将其以10进制数的形式在屏幕上显示出来。...

data segment
        
    pmax db 0dh,0ah , 'MAX :   ','$'
    pmin db 0dh,0ah , 'MIN :   ','$'
    buf dw 48,-2 ,49,50,30,-78,-88,-60,-1,48
    max dw 99
    min dw 20
data ends

code segment
    assume cs:code , ds:data
    
main proc far
start:    
    mov ax,data
    mov ds,ax    
    
    call compare
    
    lea dx,pmax
    mov ah,09h
    int 21h    
    mov ax,max[0]
    call printit
    
    
    
    lea dx,pmin
    mov ah,09h
    int 21h
    mov ax,min[0]
    call printit

    
    mov ah,4ch
    int 21h
    ret
main endp
compare proc near
    mov si,0
    mov ax,buf[si]
    mov bx,ax
    mov dx,ax
    add si,2
    mov cl,9
comp:
    mov ax,buf[si]
    add si,2    
    cmp bx,ax
    jl movbx
    cmp ax,dx
    jl movdx    
    sub cl,1
    cmp cl,0
    jnz comp
    
    mov max[0],bx
    mov min[0],dx    
    ret
movbx:
    mov bx,ax
    sub cl,1
    jmp comp
movdx:
    mov dx,ax
    sub cl,1
    jmp comp
    
    

compare endp

printit proc near
    
    test ax,8000h
    jz p
    neg ax    
    mov cx,ax
    mov dx,2dh
    mov ah,2
    int 21h
    mov ax,cx
    mov dx,0
p:    mov bx ,10
    div bx
    mov bx,dx
    mov dx,ax
    add dx,30h
    mov ah,02h
    int 21h
    mov dx,bx
    add dx,30h
    mov ah,02h
    int 21h
    ret
printit endp

code ends
    end main
    
   

转载于:https://www.cnblogs.com/da-peng/p/5540208.html

  • 1
    点赞
  • 15
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值