[ Príspevkov: 2 ] 
AutorSpráva
Offline

Užívateľ
Užívateľ
Obrázok užívateľa

Registrovaný: 29.04.09
Prihlásený: 10.07.21
Príspevky: 38
Témy: 12 | 12
NapísalOffline : 13.05.2009 22:06 | POMOC S PROGRAMOM V asm 86

caute neviete preco mi to nevypise spravny vystup ? pocet operatorov ma byt 2x vacsi ako poct malych pismen
dopredu dik
Kód:
.MODEL small
.STACK 100h
.DATA 
    oz DB "Zadaj retazec:",10,13,"$"
    retazec DB "Zadaj retazec : $"
    male_znaky DB 0
    operatory DB 0
    vyhovujuce_slova DB 0
    text     DB 10,13,"Pocet slov : $"
.CODE

       
start:       
       
    mov ax, @data
    mov ds, ax
    mov dx,OFFSET oz
    int 21h
    lea dx, retazec   ; nacitanie retazca
    mov ah, 0Ah
    int 21h

    lea bx, retazec
    xor cx, cx   
    mov cl, [bx+1]
    mov si, bx
    add si, 2
   
main_loop:

    cmp WORD PTR [si], 20h     ; medzera = nove slovo
    je kontrola
   
    cmp WORD PTR [si], 61h     ; kontrola, ci sa jedna o male pismeno
    jl operator
    cmp WORD PTR [si], 7Ah
    jg operator
   
    inc male_znaky
    jmp dalsi_znak
   
operator:

    cmp WORD PTR [si], 2Ah      ; kontrola, ci sa jedna o operator
    jl dalsi_znak
    cmp WORD PTR [si], 2Fh
    jg dalsi_znak
   
    inc operatory
    jmp dalsi_znak
                     
kontrola:                 ; vyhovuje podmienka (operatory = 2 * male_znaky) ?
                     
    call skontroluj
   
   
dalsi_znak:

    inc si
    loop main_loop
   
    call skontroluj
   
koniec:

    mov ah,09h
    mov dx,offset text
    int 21h
    mov ah,vyhovujuce_slova
    mov ax, 4C00h
    int 21h         





skontroluj PROC
   
    mov al, male_znaky
    mov ah, 2
    mul ah
    cmp al, operatory
    jne zmaz
   
    inc vyhovujuce_slova

zmaz:   

    mov male_znaky, 0
    mov operatory, 0
   
    ret 0     
   
skontroluj ENDP




END start


Offline

Skúsený užívateľ
Skúsený užívateľ
POMOC S PROGRAMOM V asm 86

Registrovaný: 11.01.09
Prihlásený: 28.12.24
Príspevky: 1395
Témy: 10 | 10
Bydlisko: Hrinova
NapísalOffline : 14.05.2009 8:37 | POMOC S PROGRAMOM V asm 86

Máš tam viac chýb, ale hlavné chyby sú tieto:

1.)
Kód:
retazec DB "Zadaj retazec : $"


Do tejto premennej načítavaš reťazec, no pri službe 0Ah musí mať reťazec takýto tvar.

2.)
Kód:
cmp WORD PTR [si], 20h


pričom to má byť:

Kód:
cmp BYTE PTR [bx+si], 20h


lebo nemáš začiatok reťazca, ktorý je v BX (či je tam WORD alebo BYTE, je v podstate jedno, lebo ti to fungovať bude, ale mal by tam byť BYTE. Tiež som v tom spravil chybu v inom príspevku).

No a máš tam ešte nejaké chyby. Vidieť, že to máš z tohto príspevku, tak sa mrkni ešte raz a všimni si deklarácie premenných a porovnávanie znakov no a podľa toho by si to mal opraviť správne.


 [ Príspevkov: 2 ] 


POMOC S PROGRAMOM V asm 86



Podobné témy

 Témy  Odpovede  Zobrazenia  Posledný príspevok 
V tomto fóre nie sú ďalšie neprečítané témy.

ASEMBLER:Určte počet slov obsahujúcich reťazec ASM alebo asm

v Assembler, C, C++, Pascal, Java

7

1465

25.03.2011 10:07

dury26

V tomto fóre nie sú ďalšie neprečítané témy.

Pomoc s ASM

v Assembler, C, C++, Pascal, Java

1

644

04.05.2008 11:47

snapshot

V tomto fóre nie sú ďalšie neprečítané témy.

preklad z .ASM do .C pomoc

v Assembler, C, C++, Pascal, Java

1

484

16.04.2011 10:33

Fico

V tomto fóre nie sú ďalšie neprečítané témy.

pomoc s programom

v Assembler, C, C++, Pascal, Java

2

565

16.11.2009 21:30

kubo88

V tomto fóre nie sú ďalšie neprečítané témy.

pomoc s programom

v Assembler, C, C++, Pascal, Java

6

564

14.04.2018 15:15

Vetrolam

V tomto fóre nie sú ďalšie neprečítané témy.

Pomoc s programom

v Assembler, C, C++, Pascal, Java

3

537

26.07.2013 9:36

Roj-i

Táto téma je zamknutá, nemôžete posielať nové príspevky alebo odpovedať na staršie.

Pomoc s programom MAYA

[ Choď na stránku:Choď na stránku: 1, 2 ]

v Grafické programy

48

2127

06.06.2011 18:27

Daron

V tomto fóre nie sú ďalšie neprečítané témy.

C++ pomoc s programom

v Assembler, C, C++, Pascal, Java

8

1880

07.12.2009 10:46

drummer87

V tomto fóre nie sú ďalšie neprečítané témy.

pomoc s malym programom

v Delphi, Visual Basic

10

595

18.02.2012 21:51

coldak

Táto téma je zamknutá, nemôžete posielať nové príspevky alebo odpovedať na staršie.

Pomoc so C# programom

v Technológia .NET

5

511

11.03.2013 23:27

shaggy

V tomto fóre nie sú ďalšie neprečítané témy.

C++ pomoc s programom

v Assembler, C, C++, Pascal, Java

9

652

09.05.2011 22:30

johny3212

V tomto fóre nie sú ďalšie neprečítané témy.

pomoc s programom v pascale

v Assembler, C, C++, Pascal, Java

10

648

06.04.2010 18:15

Logik

V tomto fóre nie sú ďalšie neprečítané témy.

pomoc s programom v PASCALE

v Assembler, C, C++, Pascal, Java

2

742

18.04.2007 9:56

gorky22

V tomto fóre nie sú ďalšie neprečítané témy.

Pomoc HD 7750 nereaguje s programom

v ATI/AMD grafické karty

8

342

26.03.2013 15:30

jaro114

V tomto fóre nie sú ďalšie neprečítané témy.

Prosim o pomoc s programom v C++

v Assembler, C, C++, Pascal, Java

0

657

21.10.2008 18:30

aphexxx

V tomto fóre nie sú ďalšie neprečítané témy.

Prosim o pomoc s programom v pascale...:(

v Assembler, C, C++, Pascal, Java

12

1288

03.06.2007 22:35

juho



© 2005 - 2024 PCforum, edited by JanoF