Forum » Programiranje » Round robin-premik zbrinik
Round robin-premik zbrinik
Mediator ::
Program je napisan za cisc proc. Se opravičujem ker je nepregleden in zelo nerealiziran.Prosil bi, če mi ga lahko nekdo skrajša.
Mislim da sem poanto totalno zgrešil.Če ma kdo kakšno bolšo idejo bi prosil zanjo!HVALA
Besedilo naloge:
V zbirniku napišite program, ki premakne elemente enodimenzionalnega polja za n mest v desno (round robin). Pri tem si pomagajte z izdelavo pomožne funkcije.
LOCO 4%STEVILO ELEMENTOV POLJA
STOD 40%SHRANIMO STEVILO ELEMENTOV POLJA NA LOKACIJO 40
LOCO 8%STEVILO MEST ZA PREMIK
STOD 41%SHRANIMO STEVILO ,ZA KOLIKO SE BO TABELA PREMAKNILA NA 41
LOCO 50%SHRANIMO STEVILO-ZACETEK POLJA
STOD 42%NA LOKACIJO 42
LOCO 1%POMOZNA ENKA
STOD 43
LOCO 1%SHRANIMO PRVO STEVILO
STOD 50%NA LOKACIJO 50
LOCO 2%SHRANIMO DRUGO STEVILO
STOD 51%NA LOKACIJO 51
LOCO 3%SHRANIMO TRETJE STEVILO
STOD 52% NA LOKACIJO 52
LOCO 4%SHRANIMO CETRTO STEVILO
STOD 53%NA LOKACIJO 53
%CALL NALOZI KLIC FUNKCIJE NALOZI V SKLAD
LODD 50%NALOZI IZ LOKACIJE 50 V AC
PUSH%DAMO NA SKLAD PRVO STEVILO V POLJU
LODD 51%NALOZI IZ LOKACIJE 51 V AC
PUSH%DAMO NA SKLAD
LODD 52
PUSH
LODD 53
PUSH
LODD 41%NALOZIMO IZ LOKACIJE 41(STEVILO 8,OZIROMA PREMIK)
ADDD 42 %PRISTEJEMO STEVILO 50(50, KER SE NAHAJA PRVI ELEMENT NA 50)
PUSH %DAMO REZULTAT 58 NA SKLAD
ADDD 43%TEH 58 PRISTEJEMO 1 Z LOKACIJE 43
PUSH%DAMO SPET NA SKLAD
ADDD 43
PUSH
ADDD 43
PUSH
INSP 4%POVECAMO SP ZA 4(VELIKOST POLJA),KJER SE NAHAJAJO STEVILA POLJA
LODL -4%SE POMAKNEMO SPET ZA 4 NAVZGOR PO SKLADU KJER JE SHRANJENA LOKACIJA
POPI%M[AC]=M[SP]
LODL -4
POPI
LODL -4
POPI
LODL -4
POPI
Mislim da sem poanto totalno zgrešil.Če ma kdo kakšno bolšo idejo bi prosil zanjo!HVALA
Besedilo naloge:
V zbirniku napišite program, ki premakne elemente enodimenzionalnega polja za n mest v desno (round robin). Pri tem si pomagajte z izdelavo pomožne funkcije.
LOCO 4%STEVILO ELEMENTOV POLJA
STOD 40%SHRANIMO STEVILO ELEMENTOV POLJA NA LOKACIJO 40
LOCO 8%STEVILO MEST ZA PREMIK
STOD 41%SHRANIMO STEVILO ,ZA KOLIKO SE BO TABELA PREMAKNILA NA 41
LOCO 50%SHRANIMO STEVILO-ZACETEK POLJA
STOD 42%NA LOKACIJO 42
LOCO 1%POMOZNA ENKA
STOD 43
LOCO 1%SHRANIMO PRVO STEVILO
STOD 50%NA LOKACIJO 50
LOCO 2%SHRANIMO DRUGO STEVILO
STOD 51%NA LOKACIJO 51
LOCO 3%SHRANIMO TRETJE STEVILO
STOD 52% NA LOKACIJO 52
LOCO 4%SHRANIMO CETRTO STEVILO
STOD 53%NA LOKACIJO 53
%CALL NALOZI KLIC FUNKCIJE NALOZI V SKLAD
LODD 50%NALOZI IZ LOKACIJE 50 V AC
PUSH%DAMO NA SKLAD PRVO STEVILO V POLJU
LODD 51%NALOZI IZ LOKACIJE 51 V AC
PUSH%DAMO NA SKLAD
LODD 52
PUSH
LODD 53
PUSH
LODD 41%NALOZIMO IZ LOKACIJE 41(STEVILO 8,OZIROMA PREMIK)
ADDD 42 %PRISTEJEMO STEVILO 50(50, KER SE NAHAJA PRVI ELEMENT NA 50)
PUSH %DAMO REZULTAT 58 NA SKLAD
ADDD 43%TEH 58 PRISTEJEMO 1 Z LOKACIJE 43
PUSH%DAMO SPET NA SKLAD
ADDD 43
PUSH
ADDD 43
PUSH
INSP 4%POVECAMO SP ZA 4(VELIKOST POLJA),KJER SE NAHAJAJO STEVILA POLJA
LODL -4%SE POMAKNEMO SPET ZA 4 NAVZGOR PO SKLADU KJER JE SHRANJENA LOKACIJA
POPI%M[AC]=M[SP]
LODL -4
POPI
LODL -4
POPI
LODL -4
POPI
Quikee ::
eh daj.. vse kaj moras naredit je da se bo tvoj program izvajal v zanki.. torej nekje mas stevec ki se bo zmanjseval z vsakim obhodom na koncu pa dodas en Jump non equal zero. JNEZ ali kakorkoli se ze imenuje ukaz (ne da se mi v tabelo gledat ker je nimam pri roki). Pri tem pa mores pazit, da delas premik od zadnjega elementa proti prvemu saj drugace povozis prejsnje elemente.
Recimo ce bi mel:
1 2 3 4 x x
in premaknes za 2 moras dobit
1 2 1 2 3 4
v primeru ce bi sel od prvega proti zadnjemu pa bi zgledlo takole
1 2 3 4 x x - enko premaknes za 2 naprej
x 2 1 4 x x - in tukaj si ze povozil trojko... zato moras it od zadnjega proti prvemu...
Aja elemente ne rabis vedno dajat vse v sklad ampak jih dajaj sproti ce je to sploh potrebno.
Recimo ce bi mel:
1 2 3 4 x x
in premaknes za 2 moras dobit
1 2 1 2 3 4
v primeru ce bi sel od prvega proti zadnjemu pa bi zgledlo takole
1 2 3 4 x x - enko premaknes za 2 naprej
x 2 1 4 x x - in tukaj si ze povozil trojko... zato moras it od zadnjega proti prvemu...
Aja elemente ne rabis vedno dajat vse v sklad ampak jih dajaj sproti ce je to sploh potrebno.
Vredno ogleda ...
Tema | Ogledi | Zadnje sporočilo | |
---|---|---|---|
Tema | Ogledi | Zadnje sporočilo | |
» | [ASM] Pomoč, ne najdem napakeOddelek: Programiranje | 1090 (966) | c0dehunter |
» | asm - vnos stevilk s tipkovniceOddelek: Programiranje | 1272 (1128) | scarymovie |
» | razumevanje programa-pomočOddelek: Programska oprema | 909 (824) | house |
» | [Naloga] Arhitektura CISC -> programiranjeOddelek: Programiranje | 1385 (1224) | Quikee |
» | Zbirnik-programOddelek: Programiranje | 2122 (2028) | Bockor |