第一种:
.model tiny
extrn display8:near
PA EQU 0F000H
.stack 100
.data
buf DB 8 dup(10H)
.code
main proc far
start:
mov ax,@data
mov ds,ax
MOV AX, 0
CALL CONVERT
LOP1:
MOV AX, 0
MOV CX, 50
START1:
PUSH AX
MOV DX,PA
MOV AL, 0
OUT DX, AL
CALL DELAY
IN AL, DX
MOV BL, AL
POP AX
ADD AL, BL
ADC AH, 0
LOOP START1
MOV BL, 50
DIV BL
CALL CONVERT
JMP LOP1
CONVERT PROC NEAR
MOV BL, AL
MOV AH, AL
AND AL, 0fh
MOV CL, 4
ROR AH, CL
AND AH, 0fh
LEA SI, BUF
MOV [SI+4], AL
MOV [SI+5], AH
MOV AX, 5000
MOV BH, 0ffh
DIV BH
MUL BL
MOV BL, 97
DIV BL
MOV BL, AH
MOV AH, 0
PUSH AX
MOV AL, BL
MOV BL, 10
DIV BL
MOV BH, AL
POP AX
DIV BL
MOV [SI], BH
MOV [SI+1], AH
MOV [SI+2], AL
CALL Display8
RET
CONVERT ENDP
delay proc near
push cx
MOV CX,0FFFH
LOOP $
POP CX
ret
delay endp
end start
.model tiny
extrn display8:near
PA EQU 0F000H
.stack 100
.data
buf DB 8 dup(10H)
.code
main proc far
start:
mov ax,@data
mov ds,ax
MOV AX, 0
CALL CONVERT
LOP1:
MOV AX, 0
MOV CX, 50
START1:
PUSH AX
MOV DX,PA
MOV AL, 0
OUT DX, AL
CALL DELAY
IN AL, DX
MOV BL, AL
POP AX
ADD AL, BL
ADC AH, 0
LOOP START1
MOV BL, 50
DIV BL
CALL CONVERT
JMP LOP1
CONVERT PROC NEAR
MOV BL, AL
MOV AH, AL
AND AL, 0fh
MOV CL, 4
ROR AH, CL
AND AH, 0fh
LEA SI, BUF
MOV [SI+4], AL
MOV [SI+5], AH
MOV AX, 5000
MOV BH, 0ffh
DIV BH
MUL BL
MOV BL, 97
DIV BL
MOV BL, AH
MOV AH, 0
PUSH AX
MOV AL, BL
MOV BL, 10
DIV BL
MOV BH, AL
POP AX
DIV BL
MOV [SI], BH
MOV [SI+1], AH
MOV [SI+2], AL
CALL Display8
RET
CONVERT ENDP
delay proc near
push cx
MOV CX,0FFFH
LOOP $
POP CX
ret
delay endp
end start