我正在尝试创建一个打印'0'等待4秒然后打印'1'的代码。
我不必考虑时间。 当秒数大于或等于56时,我需要代码才能工作。
这是我写的代码,但是我无法弄清楚问题是什么,所以当秒数大于或等于56时它会起作用。
IDEAL
MODEL small
STACK 100h
DATASEG
; -- -- -- -- -- -- -- -- -- -- -- -- --
; -- -- -- -- -- -- -- -- -- -- -- -- --
CODESEG
start:
mov ax, @data
mov ds, ax
; -- -- -- -- -- -- -- -- -- -- -- -- --
;print zero
mov dl,'0'
mov ah,2
int 21h
;reads the time
mov ah,2ch
int 21h
;checks if the seconds are bigger or equal to 56
cmp dh,56
jae l2
;moves the seconds+4 to bl
mov bl,dh
add bl,4
l3:
;check if the time is equal to bl
l1:
mov ah,2ch
int 21h
cmp dh,bl
jl l1
;print one
mov dl,'1'
mov ah,2
int 21h
; -- -- -- -- -- -- -- -- -- -- -- -- --
exit:
mov ax, 4c00h
int 21h
l2:
add dh,4
sub dh,60
mov bl,dh
jmp l3
END start
感谢您的帮助!