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

Re: Domaci pitanja

by Ivan Mitic
nedelja, 01. jun 2008 - 13:23.

1. Ovde se postavlja i pitanje sta raditi u slucaju komande:

jz [simbol]

to bi trebalo da bude direktno adresiranje, ali na koju lokaciju vrsiti
relativni skok? Meni je logicno da [] govore da je u pitanju direktno
adresiranje, a sa labelom raditi kao i u slucaju neposrednog.

slicno je i sa:

jz [reg]simbol

ovde sam takodje trazio razliku adrese labele "simbol" i PC.

Jel ima neko drugaciju ideju?

Pozdrav

2008/6/1 Ivan Mitic <mitkebgd@gmail.com>:

> Hvala puno kolega!
>
> Ajde da potvrdimo, za kod koji se napisali, output je:
>
> LINK
> 2 1 2
> # segments (name base len desc)
> .text 0 e RP
> .data e 2 RWP
> # symbols (name value seg type)
> simbol1 0 0 U
> # relocations (loc seg ref type)
> 6 1 1 RS1
> a 1 2 R1
> # data (one line per segment)
> 6000 0008 6000 0000 6000 0002 3040
> 0001
>
> Pozdrav,
>
> Ivan
>
> 2008/6/1 ivan dan <tekarh@yahoo.com>:
>
>>
>> R1 se javlja kod instrukcije jz ako u istom modulu skocis u drugi segment,
>> RS1 isto kod jz ako u jednom modulu imas skok na labelu koja nije definisana
>> u tom modulu(eksterni simbol). Ako skaces u okviru istog segmenta onda nema
>> relokacije jer ti zapisujes pomeraj a ne vrednost adrese na koju skaces pa
>> ce taj pomeraj uvek biti isti gde god relocirao segment.
>> npr:
>> extern simbol1
>> segment txt
>> jz simbol2 (sadrzaj na lokacijama 2 i 3h nije
>> relokativan jer je skok u isti segment , 0 i 1 adrese su kod instrukcije jz)
>> jz simbol1 (sadrzaj na 6 i 7 je relokativan
>> tipa RS1)
>> jz simbol3 (sadrzaj na adresama A,Bh je R1
>> relokativan)
>> simbol2: push ax
>>
>> segment dat
>> simbol3: dw 1
>> end
>>
>> Pozdrav.
>>
>> ----- Original Message ----
>> From: Ivan Mitic <mitkebgd@gmail.com>
>> To: ir3sp@rti.etf.bg.ac.yu
>> Sent: Sunday, June 1, 2008 7:00:01 AM
>> Subject: Re: [ir3sp] Domaci pitanja
>>
>> I jos jedno pitanje:
>>
>> 1. Jel neko koristio relokacije tipa R1 i AR1? Na predavanjima ne postoji
>> ni jedan primer sa njima, osim sto se pominju. Nije skroz jasno kako bi se
>> to realizovalo. Jel treba praviti ove relokacije samo za uslovni skok (jz)?
>> Da li ih je potrebno praviti u slucaju da se skace u okviru istog segmenta?
>> I kako bi ustvari izgledao uslovni (relativni) skok na lokaciju funkcije u
>> drugom modulu, jel bi se opet koristila labela?
>>
>> Ovde bi kratak primer stvarno dobro dosao:)
>>
>> Pozdrav,
>>
>> Ivan
>>
>>
>> -----------------------------------------------------------------
>> unsubscribe:
>> minimalist@rti.etf.bg.ac.yu?subject=unsubscribe%20ir3sp
>> -----------------------------------------------------------------
>>
>>
>