«« ( Date ) »» // «« ( Thread ) »» // ir3sp - 2010

Re: SP_pitanja

by Sasa Stojanovic
sreda, 05. maj 2010 - 23:53.



--- On Wed, 5/5/10, Marko Zekovic <kimmv2@yahoo.com> wrote:

From: Marko Zekovic <kimmv2@yahoo.com>
Subject: [ir3sp] SP_pitanja
To: ir3sp@rti.etf.rs
Date: Wednesday, May 5, 2010, 12:36 PM

Postovani,
1. Bojim se da nisam bas najbolje razumeo resenje koje ste predlozili, a koje je vezano za podatke u data i bss segmentima kada se pojave naredbe tipa:
labela dc labela2

Ako nije problem, zamolio bih vas da za sledeci niz naredbi na hipo masinsini napisete ekvivalentan niz naredbi za x86.
data
labela1 dc 5
labela2 dc labela1
labela3 dc labela4

bss
labela4 ds 3
labela5 ds labela4
labela6 ds labela1
U bss nisu dozvoljene labele u adresnom polju DS direktive. Kod koji se dobije kao rezultat zavisi od vaseg resenja, pa ga ne mogu napisati, ali cu vam predociti problem i ideju. Kod na hipo masini:
labela1 dc 5
labela2 dc labela1
znaci da u drugu lokaciju koju rezervisete (bajt) zelite da smjestite vrijednost simbola labela1 (to je adresa prethodnog bajta koji je inicijalizovan vrijednoscu 5). Ako taj kod pokusate doslovno da prevedete na x86, pojavljuje se problem: adresa je velicine 4 bajta. Jedno od resenja je da svaku adresu razlozite na dva dijela (predstavite je kao zbir):
pocetna adresa segmenta podataka + pomjeraj simbola u odnosu pocetak segmenta podataka
Vodite racuna da se ne mozete osloniti na asembler pri racunanju pomjeraja u odnosu na pocetak segmenta, vec sami morate da odredite pomjeraj na osnovu poretka simbola u segmentu podataka (prvi definisani podatak ima pomjeraj 0, sledeci 1, sledeci 2 itd).
Dalje, kada god se koristi simbol, koristite pomjeraj (ostavljam vam da razmislite zasto bas tako). Kada pristupate memoriji, na adresu koja je dobijena prema prethodnoj recenici, dodajete adresu pocetka segmenta podataka.

2. Da li OTI instrukcuja mora da se implementira tako da moze da ispisuje brojeve koji nisu jednocifreni (na vezbama je usvojena pretpostavka da je broj jednocifren)?
Visecifreni oznaceni brojevi.
Pozdrav,Sasa

Unapred hvala,Zekovic Marko 05/183





-----Inline Attachment Follows-----

-----------------------------------------------------------------
unsubscribe:
   minimalist@rti.etf.rs?subject=unsubscribe%20ir3sp
-----------------------------------------------------------------