已关闭。此问题需要details or clarity。当前不接受答案。
**想要改进此问题?**添加详细信息并通过editing this post阐明问题。
3天前关闭。
Improve this question
这个代码没有在屏幕上输出.我怎么能?
increase_counter proc
push ax ; Registerleri koru
; Sayıyı arttır
inc sayac1
jnc skip_counter2 ; Carry flag'i sıfır ise 2. basamağı arttırma
inc counter2
skip_counter2:
; Sayı 9'dan büyükse sıfırla
cmp counter1, '9'+1
jg reset_counter
cmp counter2, '9'+1
jg reset_counter
; Sayacı ekrana yazdır
call print_counter
pop ax ; Registerleri geri yükle
ret
increase_counter endp
; Sayıyı azaltmak için bir yordam tanımlayın
decrease_counter proc
push ax ; Registerleri koru
; Sayıyı azalt
dec counter1
jnc skip_counter2 ; Carry flag'i sıfır ise 2. basamağı azaltma
dec counter2
sayac2:
; Sayı 0'dan küçükse 9'a eşitle
cmp counter1, '0'-1
jl reset_counter
cmp counter2, '0'-1
jl reset_counter
; Sayacı ekrana yazdır
call print_counter
pop ax ; Registerleri geri yükle
ret
decrease_counter endp
call key_pressed
; Tuşa basılmışsa sayıyı arttır veya azalt
cmp al, '+'
je increase_counter
cmp al, '-'
je decrease_counter
; Tuşa basılmamışsa işlemi tekrarla
jmp start
; Sayıyı arttırmak için bir yordam tanımlayın
increase_counter proc
push ax ; Registerleri koru
; Sayıyı arttır
inc counter1
jnc skip_counter2 ; Carry flag'i sıfır ise 2. basamağı arttırma
inc counter2
skip_counter2:
; Sayı 9'dan büyükse sıfırla
cmp counter1, '9'+1
jg reset_counter
cmp counter2, '9'+1
jg reset_counter
pop ax ; Registerleri geri yükle
ret
increase_counter endp
; Sayıyı azaltmak için bir yordam tanımlayın
decrease_counter proc
push ax ; Registerleri koru
; Sayıyı azalt
dec counter1
jnc skip_counter2 ; Carry flag'i sıfır ise 2. basamağı azaltma
dec counter2
skip_counter2:
; Sayı 0'dan küçükse 9'a eşitle
cmp counter1, '0'-1
jl reset_counter
cmp counter2, '0'-1
jl reset_counter
pop ax ; Registerleri geri yükle
ret
decrease_counter endp
; Sayıyı sıfırlamak için bir yordam tanımlayın
reset_counter proc
mov counter1, '0'
mov counter2, '0'
ret
reset_counter endp
1条答案
按热度按时间bvn4nwqk1#
你已经有了很好的逻辑来处理计数器的内部操作。不幸的是,这还不足以把它显示在屏幕上。最简单的方法是这样的:
请注意,文本光标在此之后不会自己跳回到屏幕的左上角,如果您想这样做,您还需要添加以下内容: