Anonymní profil jano – Programujte.com
 x   TIP: Přetáhni ikonu na hlavní panel pro připnutí webu

Anonymní profil jano – Programujte.comAnonymní profil jano – Programujte.com

 

Příspěvky odeslané z IP adresy 188.120.25.–

jano
Assembler › assembler 8080 pomoc
27. 3. 2010   #125849

Vie mi niekto poradit kde robim chybu program ma spocitat pocet slov obsahujucich viac cislic ako pismen malej abecedy



org 1000

dcx sp ; inicializacia zasobnika (0FFFFh)

lxi h,text1
call putstr ; vypis text1


call getline
lxi b,vlozeny

mvi d,0 ; pocitadlo cislic
mvi c,0 ; počítadlo malých písmen
mvi e,0 ; slov ktore obsahuju viac čísel ako písmen
; malej abecedy
zaciatok:
ldax b ; načíta sa zadaný znak do registra'a'
inx b ; posun znaku
cpi 13 ; porovná sa register 'a' s ENTER
jz vypis ; ak sa rovná skočí na výpis
cpi 32 ; porovná sa register 'a' s SPACE
jz test ; ak sa rovná skočí na TEST

cpi '0' ; väčšie alebo rovne 0
jc otestuj ; menej ako '0'?
cpi '9'+1
jnc otestuj ; menšie alebo rovne 9+1
inr d ; Ak je to číslo tak inkrementuje d o 1
jmp zaciatok

otestuj: ; Zistíme či je to malé písmeno
cpi 'a' ; Vacsie alebo rovne ako a
jc zaciatok
cpi 'z' + 1 ; Mensie alebo rovne ako z
jnc zaciatok
inr c ;Ak je to malé písmeno tak inkrementuje e o 1
jmp zaciatok


test:
mov a,d ; Presuň hodnotu z registra d do akumulátora
cmp c ; Porovnaj akumulátor s registrom d
inr e ; Ak je počet čísel menej ako počet malých písmen incrementuj e
jc zaciatok ;skoc na zaciatok


vypis:

lxi h, text2
call putstr
mov a,c
adi '0' ; hodnota a jej ASCII tvar ...
call putchar
call newline
hlt

include 'examples\8080\include\getline.inc'
include 'examples\8080\include\putstr.inc'
include 'examples\8080\include\putchar.inc'
include 'examples\8080\include\getchar.inc'
include 'examples\8080\include\newline.inc'


text1: db 'Pocet slov obsahujucich viac cislic ako písmen malej abecedy ...',10,13,'Vloz text: ',0
text2: db 10,13,'Pocet slov obsahujucich viac cislic ako pismen malej abecedy je: ',0
vlozeny: ds 30



 

 

Hostujeme u Českého hostingu       ISSN 1801-1586       ⇡ Nahoru Webtea.cz logo © 20032024 Programujte.com
Zasadilo a pěstuje Webtea.cz, šéfredaktor Lukáš Churý