实训汇编语言设计——输入1-12 ,显示月份缩写

输入1-12 ,显示月份缩写

title home
datasg segment
 three db 3
 monin db 3,4 dup(?)
 alfmon db '???','$'
 montab db 'JNA','FEB','MAR','APR','MAY','JUN'
        db 'JUL','AUG','SEP','OCT','NOV','DEC'
datasg ends
codesg segment para'code'
 assume cs:codesg,ds:datasg,es:datasg
main proc far
    push ds
    sub ax,ax
    push ax
    mov ax,datasg
    mov ds,ax
    mov es,ax
 l1:mov ah,0aH
    int 21h
    cmp dl,3
    jz  exit
  
    call input
    call locate
    call display
    mov ah,2
    mov dl,0ah          ;实现回车换行
    int 21h
    mov dl,0dh
    int 21h
    jmp l1
exit:ret
main endp

 input proc near
    push dx
    mov ah,0ah
    lea dx,monin
    int 21h
    mov ah,monin+2
    mov al,monin+3
    xor ax,3030h
    cmp ah,00
    jz return
    sub ah,ah
    add al,10
 return: pop dx
    ret
 input endp
 
 locate proc near
    push si
    push di
    push cx
    lea si,montab
    dec al
    mul three
    add si,ax
    mov cx,03
    cld
    lea di,alfmon
    rep movsb
    pop cx
    pop di
    pop si
    ret
locate endp

display proc near
    push dx
    lea dx,alfmon
    mov ah,09
    int 21h
    pop dx
    ret
 display  endp
 
 codesg ends
     
       end main  
                   

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

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值