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

Re: Domaci pitanja

by Miloš Rašić
nedelja, 18. maj 2008 - 20:14.

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
>
> *


Zar ne bi u ovom primeru trebalo i labele LOOP i EVEN da se nalaze u tabeli
simbola?