回 帖 发 新 帖 刷新版面

主题:[讨论]最后调试好了,后面出现乱码,大虾帮忙改一下

显示日期的程序,运行后显示:
date:2006 11 18
几番周折终于显示了,但为啥总在后面出现乱码啊,大虾帮忙改一下,感激不尽

data segment
ddd db 'date:','$'
DBUFFER1 DB 20 DUP (' ')
data ends

stack segment 
sss dw 200 dup(?)
stack ends

code segment
assume cs:code,ds:data,ES:DATA,ss:stack
start:
       mov ax,data
       mov ds,ax 
       mov es,ax      

       MOV AH,2AH         
       INT 21H

       MOV SI,0
       MOV AX,CX
       MOV BX,100
       DIV BL

       MOV BL,AH
       CALL BCDASC1         
       MOV AL,BL
       CALL BCDASC1
       INC SI
       MOV AL,DH
       CALL BCDASC1
       INC SI
       MOV AL,DL
       CALL BCDASC1


      
   
       mov dx,offset ddd
       mov ah,9
       int 21h

     

       MOV bp,OFFSET DBUFFER1
       mov dx,bp
       mov ah,9
       int 21h
       
     
       MOV AH,4CH            
       INT 21H


BCDASC1 PROC NEAR   
       PUSH BX
       CBW
       MOV BL,10
       DIV BL
       ADD AL,'0'
       MOV DBUFFER1[SI],AL
       INC SI
       ADD AH,'0'
       MOV DBUFFER1[SI],AH
       INC SI
       POP BX
       RET
BCDASC1 ENDP

CODE   ENDS
       END START

回复列表 (共1个回复)

沙发

那怎么能显示成:
year:2006
month:11
date:18
这样的形势呢?

我来回复

您尚未登录,请登录后再回复。点此登录或注册