Obsah fóra
PravidláRegistrovaťPrihlásenie




Odpovedať na tému [ Príspevkov: 7 ] 
AutorSpráva
Offline

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

Registrovaný: 13.11.07
Prihlásený: 01.08.08
Príspevky: 15
Témy: 8
Príspevok NapísalOffline : 13.11.2007 20:32

Nemá niekto prosím urobenú úlohu v assembleri, ktorá by urobila túto jednoduchú činnosť alebo aspoň aby sa na to podobala???

úloha: z reťazca znakov, ktoré zadá užívateľ vyberie len čísla a tie vypíše na monitor. dalej vypíše ich aritmetický priemer.

Ak by niekto mal zdrojak takéhoto niečoho tak by mi veľmi pomohol. Alebo ak by niekto mal aspoň tú prvú časť úlohy bez toho aritmetického priemeru aj to by pomohlo.

Dik.


Offline

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

Registrovaný: 21.06.07
Prihlásený: 06.05.13
Príspevky: 421
Témy: 4
Príspevok NapísalOffline : 13.11.2007 22:44

Kód:
.MODEL SMALL                   
.STACK 50H     
.data
                 
zadaj     DB 13,10,'Zadaj retazec a stlac ENTER: $'
vysledok  DB 13,10,'Cislice z retazca <0....9>: $'
priemer   DB 13,10,'Aritm.priemer: $'
dlzka     DB 0FFh
text      DB '' ; tu sa bude ukladat "zadavany retazec"

.CODE
org 100h
                 
START:
          mov ax,@data
          MOV DS,AX
          mov ah,09h
          lea dx,zadaj
          int 21h           ; zobrazi sa vyzva na zadanie retazca

          lea dx, dlzka     ;nastavi do dx adresu ulozenej max dlzky retazca
                            ;zaroven od tej adresy bude ukladat nacitany retazec
          mov ah,0Ah        ;sluzba na nacitanie retazca ukonceneho ENTER
          int 21h

                lea bx, text          ; do bx adresu data seg.
                xor CX, CX            ; CX <--- 0
                mov CL, [bx]          ; CL ... dlzka nacitaneho textu
                MOV DI, CX
                mov [text+DI+1], '$'  ; na koniec nacitaneho retazca prida '$'

          lea dx,vysledok
          mov ah,09h
          int 21h            ; zobrazi text "Cislice:..."

                XOR BX,BX             ; BX <- 0;   ...sucet cislic
                XOR CH,CH             ; CH <- 0;   ...pocet cislic

                lea DI, text
cely_retazec:
                mov AL, [DI]
                cmp AL, '$'           ; sme uz na konci prehladavaneho retazca
                je  koniec_retazca
                cmp AL, '0'           ; porovna znak s cislicou '0'
                jl  nie_cislica       ;     ... menej nez '0'
                cmp AL, '9'           ; porovna znak s cislicou '9'
                jg  nie_cislica       ;     ... viac nez '9'
               
cislica:
                mov DL, AL            ; ... cislica !!! :-)
                mov ah,02h            ;
                int 21h               ;vypisanie znaku (cislice)
aritmetika:               
                inc CH                ; Pocet cislic +1
                sub AL,'0'            ; ... z cislice urobime cislo ('0'...0; ---- '9'...9)
                mov AH, 0
                add BX,AX             ; sucet + hodnota_cislice
nie_cislica:
                inc DI                ; dalsi znak v zdrojovom retazci
                jmp cely_retazec                                 

koniec_retazca:
          lea dx,priemer
          mov ah,09h
          int 21h            ; zobrazi text "Aritm.priemer:"
         
                mov AX,BX             ; pre delenie musi byt delenec register AX !!!
                div CH                ; AX / CH (sucet/pocet)

          mov DL, AL            ; .priemer je v AL, ale je to cislo!!! (napr. 4)
          ADD DL, '0'           ;     ... z cisla urobime znak (4--->'4')
          mov ah,02h            ;
          int 21h               ;vypisanie znaku (cislice/vysledku)  :-)
                 
koniec:                               
                MOV AX,4C00H
                INT 21H               ; koniec               
                END START


Offline

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

Registrovaný: 13.11.07
Prihlásený: 01.08.08
Príspevky: 15
Témy: 8
Príspevok Napísal autor témyOffline : 14.11.2007 9:26

Ďakujem, ďakujem veľmi pekne.


Offline

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

Registrovaný: 14.11.07
Prihlásený: 23.05.09
Príspevky: 9
Témy: 6
Príspevok NapísalOffline : 14.11.2007 17:04

potrebujem urobit

-nacitat obsah lubovolneho suboru
-opyta sa zadaj nazov suboru
-nacitat a vypisat na obrazovku po 10 znakoch
-vypise pocet vypisanzch znakov

dakujem


Offline

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

Registrovaný: 21.06.07
Prihlásený: 06.05.13
Príspevky: 421
Témy: 4
Príspevok NapísalOffline : 15.11.2007 9:48

lukinno píše:
potrebujem urobit

-nacitat obsah lubovolneho suboru
-opyta sa zadaj nazov suboru
-nacitat a vypisat na obrazovku po 10 znakoch
-vypise pocet vypisanzch znakov

dakujem


Ja potrebujem kupit nejake veci na zimu, darceky na vianoce,... a zisiel by sa aj nejaky milion, aby som uz nemusel makat a ucit sa po internete, aj ked samovzdelavanie neboli....

dakujem

nastuduj si INT21 !!!, a ako vidim, mas aj internet, tak to je otazka 1/2 hodiny. Ale asi nevies robit s google, tak Ti nazaciatok pomozem:

http://docs.huihoo.com/help-pc/int-int_21.html


Offline

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

Registrovaný: 21.06.07
Prihlásený: 06.05.13
Príspevky: 421
Témy: 4
Príspevok NapísalOffline : 15.11.2007 14:52

tu mas aspon hrubu strukturu programu:
Kód:
.MODEL SMALL                   
.STACK 100H     
.DATA
               
riadok          DB 10,13                 
udaje_zo_suboru DB '0123456789', '$'
file_handle     DW 0
dlzka           DB 0, 0
meno_suboru     DB "subor.txt", 0

.CODE
                 
START:          MOV AX,@DATA
                MOV DS,AX

fileopen:       mov AX, 3D00h         ; open file (read only)
                lea DX, meno_suboru
                int 21h               ; INT21 ... file open
                mov file_handle, AX

fileread:       mov BX, file_handle
                mov CX, 10            ; CX...10    number of bytes to read
                lea DX, udaje_zo_suboru  ; pointer to read buffer
                mov AH, 3Fh           ; file read by filehandle
                int 21h               ; INT21 ... file read

data_out:       MOV AH,09H
                LEA DX, riadok
                INT 21h               ; vypis textu... (obsah suboru)
               
fileclose:      mov BX, file_handle
                mov AH, 3Eh           ; file close by filehandle
                int 21h               ; INT21 ... file close

koniec:         MOV AX,4C00H
                INT 21H               ; koniec               
                END START


Offline

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

Registrovaný: 13.11.07
Prihlásený: 01.08.08
Príspevky: 15
Témy: 8
Príspevok Napísal autor témyOffline : 15.11.2007 20:38

Lukinno prosím ťa nabudúce si založ vlastnú tému :-) lebo si sa tu nejako divne vmiešal.

Sento tebe ešte raz veľka vďaka za pomoc.


Odpovedať na tému [ Príspevkov: 7 ] 


Podobné témy

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

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

4

666

04.05.2008 11:42

snapshot Zobrazenie posledných príspevkov

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

v Perl, Python, Ruby, CGI

5

962

08.06.2020 14:50

ux Zobrazenie posledných príspevkov

V tomto fóre nie sú ďalšie neprečítané témy. Celkom pekna a jednoducha uloha, viete?

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

6

771

13.10.2008 16:25

p360t Zobrazenie posledných príspevkov

V tomto fóre nie sú ďalšie neprečítané témy. Násobenie a delenie v assembleri

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

4

2769

01.11.2007 20:01

martin90 Zobrazenie posledných príspevkov

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

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

0

606

17.04.2010 10:54

pack Zobrazenie posledných príspevkov

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

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

0

334

04.10.2011 17:49

tomik858 Zobrazenie posledných príspevkov

V tomto fóre nie sú ďalšie neprečítané témy. Delay aneb mrhanie casom v assembleri

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

5

790

20.10.2009 23:53

stanke Zobrazenie posledných príspevkov

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

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

8

372

28.04.2021 8:36

shiro Zobrazenie posledných príspevkov

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

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

1

615

11.11.2009 16:23

feromakovi Zobrazenie posledných príspevkov

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

v Technológia .NET

4

669

02.12.2014 13:25

hatto13 Zobrazenie posledných príspevkov

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

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

0

792

02.02.2008 7:37

HT Zobrazenie posledných príspevkov

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

v Databázy

8

631

27.11.2011 17:00

coldak Zobrazenie posledných príspevkov

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

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

6

485

03.05.2010 7:42

coldak Zobrazenie posledných príspevkov

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

v Vzdelanie, štúdium, škola

28

2249

23.05.2008 20:03

Svolo Zobrazenie posledných príspevkov

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

v Krčma

13

3447

24.11.2011 0:12

Jeffo Zobrazenie posledných príspevkov

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

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

2

905

22.10.2007 15:04

programator Zobrazenie posledných príspevkov


Nemôžete zakladať nové témy v tomto fóre
Nemôžete odpovedať na témy v tomto fóre
Nemôžete upravovať svoje príspevky v tomto fóre
Nemôžete mazať svoje príspevky v tomto fóre

Skočiť na:  

Powered by phpBB Jarvis © 2005 - 2024 PCforum, webhosting by WebSupport, secured by GeoTrust, edited by JanoF
Ako väčšina webových stránok aj my používame cookies. Zotrvaním na webovej stránke súhlasíte, že ich môžeme používať.
Všeobecné podmienky, spracovanie osobných údajov a pravidlá fóra