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

Re: Domaci pitanja

by Dragic Igor
utorak, 20. maj 2008 - 12:20.

Da li stek moramo praviti sa DS direktivom posto sa DW nismo u mogucnosti da zauzmemo vise od jedne memorijske lokacije u jednom koraku(zbog defincije direktive DW u tekstu domaceg jer nemamo mogucnost koriscenja DUP naredbe)?
----- Original Message -----
From: Miloš Rašić
To: ir3sp@rti.etf.bg.ac.yu
Sent: Sunday, May 18, 2008 8:14 PM
Subject: Re: [ir3sp] Domaci pitanja





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?



------------------------------------------------------------------------------


-----------------------------------------------------------------
unsubscribe:
minimalist@rti.etf.bg.ac.yu?subject=unsubscribe%20ir3sp
-----------------------------------------------------------------