Navigacija
Lista poslednjih: 16, 32, 64, 128 poruka.

8086 assmbl pitanje

[es] :: Asembler :: 8086 assmbl pitanje

[ Pregleda: 2818 | Odgovora: 2 ] > FB > Twit

Postavi temu Odgovori

Autor

Pretraga teme: Traži
Markiranje Štampanje RSS

leo.b

Član broj: 24979
Poruke: 1
*.tel.net.ba

ICQ: 145751600


Profil

icon 8086 assmbl pitanje19.04.2004. u 20:57 - pre 221 meseci
Pozdrav, imam manji problem u Assembleru (MASM simulator za 8086 proc)
Zapeo sam na slijedecem zadatku: "uneseni string ispisati obrnuto, pri tome koristiti stog"

Za stavljanje podatka na stog koristio sam PUSH naredbu, a za skidanje sa stoga POP.
Podatak unesen sa tipkovnice sam na slijedeci nacin staljao na stog:

mov ah, 01h
int 21h
mov znak, al

mov ax, ptrZnak
push ax

Varijable znak i ptrZnak sam definirao ovako:
znak DB ?
ptrZnak DW znak


Sa stoga sam skidao podatke i ispisivao ih na slijedeci nacin:
pop ptrZnak
mov dx, ptrZnak
mov ah, 09h
int 21h

Rezultat ovoga bi bio ispisivanje niza nepoznatih karaktera, pa sam onda odlucio uneseni podatak staviti na prvo mjesto niza duljine 2 karaktera, dok bi na drugo mjesto stavio znak za kraj stringa ($).

Kada bi takve podatke uzimao sa stoga i ispisivao ih onoliko puta koliko je bilo unesenih znakova, ispisivao bi mi samo zadnji uneseni karakter.

Moze mi netko pomoci, dati neku smjernicu ili pak rjesiti zadatak ;) ?
Hvala.
 
Odgovor na temu

stanks
RH

Član broj: 12628
Poruke: 34
*.net.htnet.hr



Profil

icon Re: 8086 assmbl pitanje28.04.2004. u 20:02 - pre 221 meseci
Naredbe cld, std. Pomaknes pointer na kraj pa umanjujes ptrZnak za 1 i ispisujes sve dok ima znakova?
std postavlja direction flag (onda ucitavas od zadnjeg prema prvom)
cld brise (mice) direction flag....to je obavezno na kraju kad ti vise nije potrebno inace dolazi do rusenja! (isto kao i push i pop...svaki push mora imati pop u proceduri inace banana)

stanks
 
Odgovor na temu

system0verride
Nishville

Član broj: 8363
Poruke: 44
*.ptt.yu

Sajt: www.biosforge.com


Profil

icon Re: 8086 assmbl pitanje31.05.2004. u 20:01 - pre 220 meseci
Ajde stavi ceo kod na forum ili mi posalji mail...
 
Odgovor na temu

[es] :: Asembler :: 8086 assmbl pitanje

[ Pregleda: 2818 | Odgovora: 2 ] > FB > Twit

Postavi temu Odgovori

Navigacija
Lista poslednjih: 16, 32, 64, 128 poruka.