month.asm
来自「这是一个显示月份的汇编源代码」· 汇编 代码 · 共 66 行
ASM
66 行
data segment para 'DATA' ;定义数据段
three DB 3
mess DB 'Month=?',0DH,0AH
monin label byte
max DB 3
act DB ?
mon DB 3dup(?)
alfmon DB '???',0DH,0AH,'&'
montab DB 'JAN','FEB','MAR','APR','MAY','JUN'
DB 'JUL','ACG','SEP','OCT','NOV','DEC'
data ends ;数据段结束
;:::::::::::::::::::::::::::::::::::::::::::::
code segment para 'code' ;定义代码段
assume CS:CODE,DS:DATA,ES:DATA ;分配寄存器
main proc far
push DS
sub AX,AX
push AX
move AX,DATA
move DS,AX
move ES,AX
;输入提示
start: lea DX,mess
move AH,9
int 21H
lea DX,monin
mov AH,0AH
int 21H
mov DL,0DH
mov AH,02H
int 21H
mov DL,0AH
mov AH,02H
int 21H
cmp act,0
je exit
mov BH,30H
cmp act,2
je two
mov BL,mon
jmp conv
two: mov BL,mon+1
mov BH,mon
conv: xor BX,3030H
mov AL,10
mul BH
add AL,BL
cmp AL,13
jnc exit
loc: lea SI,montab
dec AL
mul three
add SI,AX
mov CX,3
cld
lea DI,alfmon
rep movsb
lea DX,alfmon
mov AH,09H
int 21H
jmp start
exit: ret
main endp
code ends
end main
⌨️ 快捷键说明
复制代码Ctrl + C
搜索代码Ctrl + F
全屏模式F11
增大字号Ctrl + =
减小字号Ctrl + -
显示快捷键?