Loops 如何制作无限循环以保持8086的时钟连续显示?
下面是我编写的代码,但它显示了我希望它在循环中保持更新的时间。我已经试过了。虽然循环和简单的循环,但它们没有帮助Loops 如何制作无限循环以保持8086的时钟连续显示?,loops,assembly,x86-16,processor,16-bit,Loops,Assembly,X86 16,Processor,16 Bit,下面是我编写的代码,但它显示了我希望它在循环中保持更新的时间。我已经试过了。虽然循环和简单的循环,但它们没有帮助 MAIN PROC L1: mov cx, 100 push cx MOV AX, @DATA ; initialize DS MOV DS, AX mov BX,offset time ; BX=offset address of string TIME CALL
MAIN PROC
L1:
mov cx, 100
push cx
MOV AX, @DATA ; initialize DS
MOV DS, AX
mov BX,offset time ; BX=offset address of string TIME
CALL GET_TIME ; call the procedure GET_TIME
CALL clrscr
MOV DX,offset time ; DX=offset address of string PROMPT
MOV AH, 09H ; print the string PROMPT
INT 21H
MOV AH, 4CH ; return control to DOS
INT 21H
pop cx
inc cx
loop L1
MAIN ENDP
MOV-AH,4CH;将控件返回DOS
int21h
退出程序,使其不会到达loop语句。循环会自动减少CX,您根本不想看到inc CX
。您需要将mov-cx,100
移动到标签L1
上方的循环外谢谢,它成功了!