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

Re: pitanja - 3. zad. feb. '05, 1. zad. isti rok

by djolent
subota, 09. septembar 2006 - 21:54.

Ja mislim ovako:
pomenuti izraz bi trebalo da je ispravan, ako se u obzir uzme da postoji i
relokacija RS1 onako kako je definisana u fajlu Asemleri2.doc. Radi se o
razlici neke spoljne labele i location countera, pa se dodaje zapis o
relokaciji RS1, a na odgovarajucem mestu u data sekciji se stavlja 0 (u
ovom slucaju je PGB1 bas location counter, a u opstem slucaju, za
proizvoljnu lokalnu labelu bi trebalo nastimovati razliku, da ne bude 0,
vec relativno u odnosu na location counter). Na kraju se, u izlaznom fajlu
uklanja zapis o RS1 relokaciji, jer to na kraju, kao razlika dve labele,
postaje konstanta (nerelokativan izraz)

/*
Pomenuti izraz iz 3. zadatka jeste neregularan, jer je na predavanjima
receno da se prihvataju izrazi sa spoljnim simbolima samo ako
su oblika LABEL ili LABEL + const.
Tolerisana su (iz razloga sto ova greska u izrazu nije bila namerni cilj
postavke) i resenja koja su u predm. program ugradjivala lokalnu
vrednost izraza i oznacavale ga kao DAT relokativan, a dodavale
i simbol zapis za PGA.
DB
*/