Re: Domaci pitanja
Naravno, u navedenom primeru bi se javljale samo instrukcije iz postavke
domaceg.
2008/5/13 Ivan Mitic <mitkebgd@gmail.com>:
> Imam par nedoumica oko domaceg zadatka, pa ako neko zna bio bih zahvalan
> da odgovori.
>
> 1. Samo da potvrdim. Domaci je znaci da se iz asemblerskog koda napravimo
> objektni kod, tj. za primer dole:
>
> * BEG ; count the bits in a number
> USE WRITE, TEMP ; external symbols
> TXT ; default, even if not here
> INI ; Read(A)
> LOOP ; REPEAT
> SHR ; A := A DIV 2
> BCC EVEN ; IF A MOD 2 # 0 THEN
> STA TEMP ; TEMP := A
> LDA BITS
> INC
> STA BITS ; BITS := BITS + 1
> LDA TEMP ; A := TEMP
> EVEN BNZ LOOP ; UNTIL A = 0
> LDA BITS ;
> JSR WRITE ; Write(BITS)
> HLT ; terminate execution
> DAT
> BITS DC 0 ; BITS : BYTE
> END*
>
> dobijamo sledeci output:
>
> *LINK
> 2 2 8
> # segments (name base len desc)
> .text 0 14 RP
> .data 14 1 RWP
> # symbols (name value seg type)
> WRITE 0 0 U
> TEMP 0 0 U
> # relocations ( loc seg ref type)
> 03 1 1 A1
> 05 1 2 AS1
> 07 1 2 A1
> 0A 1 2 A1
> 0C 1 2 AS1
> 0E 1 1 A1
> 10 1 2 A1
> 12 1 1 AS1
> # data (one line per segment)
> 0A 16 3A 0D 1E 00 19 14 05 1E 14 19 00 37 01 19 14 3C 00 18 00
>
> *s tim sto je potrebno koristiti direktive PUBLIC i EXTERN umesto DEF i
> USE.
>
> 2. Da li moze neko malo detaljnije da objasni namenu data, bss i stek
> segmenta ili da naglasi njihove razlike? Najbolje bi bilo da navede neki
> primer njihovog koriscenja.
>
> 3. Da li treba podrzati jos neke direktive pored PUBLIC, EXTERN, BSS, DAT,
> TXT i STACK, END?
>
> Pozdrav,
>
> Ivan
>
domaceg.
2008/5/13 Ivan Mitic <mitkebgd@gmail.com>:
> Imam par nedoumica oko domaceg zadatka, pa ako neko zna bio bih zahvalan
> da odgovori.
>
> 1. Samo da potvrdim. Domaci je znaci da se iz asemblerskog koda napravimo
> objektni kod, tj. za primer dole:
>
> * BEG ; count the bits in a number
> USE WRITE, TEMP ; external symbols
> TXT ; default, even if not here
> INI ; Read(A)
> LOOP ; REPEAT
> SHR ; A := A DIV 2
> BCC EVEN ; IF A MOD 2 # 0 THEN
> STA TEMP ; TEMP := A
> LDA BITS
> INC
> STA BITS ; BITS := BITS + 1
> LDA TEMP ; A := TEMP
> EVEN BNZ LOOP ; UNTIL A = 0
> LDA BITS ;
> JSR WRITE ; Write(BITS)
> HLT ; terminate execution
> DAT
> BITS DC 0 ; BITS : BYTE
> END*
>
> dobijamo sledeci output:
>
> *LINK
> 2 2 8
> # segments (name base len desc)
> .text 0 14 RP
> .data 14 1 RWP
> # symbols (name value seg type)
> WRITE 0 0 U
> TEMP 0 0 U
> # relocations ( loc seg ref type)
> 03 1 1 A1
> 05 1 2 AS1
> 07 1 2 A1
> 0A 1 2 A1
> 0C 1 2 AS1
> 0E 1 1 A1
> 10 1 2 A1
> 12 1 1 AS1
> # data (one line per segment)
> 0A 16 3A 0D 1E 00 19 14 05 1E 14 19 00 37 01 19 14 3C 00 18 00
>
> *s tim sto je potrebno koristiti direktive PUBLIC i EXTERN umesto DEF i
> USE.
>
> 2. Da li moze neko malo detaljnije da objasni namenu data, bss i stek
> segmenta ili da naglasi njihove razlike? Najbolje bi bilo da navede neki
> primer njihovog koriscenja.
>
> 3. Da li treba podrzati jos neke direktive pored PUBLIC, EXTERN, BSS, DAT,
> TXT i STACK, END?
>
> Pozdrav,
>
> Ivan
>
- Follow-Ups:
- Re: Domaci pitanja
- From: "Ivan Mitic" <mitkebgd@gmail.com>
- Re: Domaci pitanja
- References:
- Domaci pitanja
- From: "Ivan Mitic" <mitkebgd@gmail.com>
- Domaci pitanja
Previous by date: Domaci pitanja
Next by date: Re: Domaci pitanja
Previous by thread: Domaci pitanja Next by thread: Re: Domaci pitanja
Previous by thread: Domaci pitanja Next by thread: Re: Domaci pitanja