NAM,
ORG, EQU, END, FCB, RMB, ... so psevdoukazi (nepravi ukazi), ki so namenjeni
zbirniku in ne CPU.
Zbirnik
jih interpretira kot navodilo pri prevajanju in jih ne
prevede v ukaze, ki jih potem izvaja CPU (v izvršljivo kodo). Ukazi torej
le vplivajo na potek in vsebino prevajanja.
NAM <ime programa> |
Je
prvi ukaz v programu, ki pove zbirniku ime programa <ime programa>. |
ORG
<naslov> npr:
ORG
$4000 |
Zbirniku
pove, naj od tega mesta dalje niza naslove za spremenljivke ali strojno
kodo začenši z navedenim naslovom <naslov>. Vsebine,
ki bodo sledile, se nahajajo od naslova $4000 dalje. Ukaz
uporabimo za določitev začetnega naslova v RAM-u, EPROM-u, ... od
katerega dalje naj zbirnik vnaša prevedeno kodo, niza spremenljivke, itd. |
<oznaka>
EQU <vrednost> npr: port1
equ $0002 |
Oznaki
(imenu, simbolu, label) <oznaka> priredi vrednost <vrednost>. Imenu
(oznaki) port1 priredi vrednost $0002. Odslej
lahko namesto naslova $0002 uporabljamo oznako port1, kar nam olajša
preglednost in razumevanje programa. |
END
|
Opozori
zbirnik, naj preneha s prevajanjem. |
RMB
<n>
npr.: stevec RMB 4 |
Rezervira
(preskoči) polje <n> zlogov v pomnilniku za spremenljivko
(ne sme se pojaviti med programsko kodo, kjer se nahajajo prevedeni
ukazi!). Prevajalnik
v pomnilniku rezervira (preskoči) 4 naslove, na katerih se bo nahajala
spremenljivka z imenom "stevec". |
FCB
<konstanta> npr. meseci
FCB 12
|
V
prevedeno kodo vnese konstanto <konstanta>, ki ima dolzino en zlog
(ne sme se pojaviti v programu med ukazi procesorju!). Ukaz uporabljamo za
vnašanje konstant oz. pripravo fiksnih tabel v pomnilniku. V
objektno (ciljno) kodo se med prevajanjem vpiše na mesto, ki ga določa
naslov, določen z oznako "meseci",
konstanta 12. |
FDB
<konstanta> |
V
prevedeno kodo vnese konstanto <konstanta> dolžine dva zloga (ne
sme se pojaviti v programu med ukazi procesorju!). Ukaz uporabljamo za vnašanje
konstant oz. pripravo fiksnih tabel v pomnilniku. Velja
isto kot za FCB, le da tukaj gre za 16 bitov, namesto za 8. |
FCC
<"text"> npr.: FCC
"ABC"
|
Prevede
podan niz ASCII znakov <"text"> v ASCII kodni zapis. Vsak
ASCII znak se prevede v enozložno ASCII kodo. V
ciljno kodo se pri prevajanju vnese konstanta $41 za 'A', $42 za 'B' in
$43 za 'C' |
Simulator
MC6803 uporablja še psevdoukaz SM, ki ima
naslednjo obliko:
SM
<začetni naslov> <vrednost1>
<vrednost2> ... <vrednostN>
Na
osnovi SM ukaza naloži nalagalnik podane vrednosti v pomnilnik začenši z
naslovom <začetni naslov>. Ukaz SM se ne prevede v strojno kodo!
Ukaz
je namenjen le kot pomoč uporabniku, ki lahko tako že v fazi pisanja programa
poskrbi za to, da se bodo v pomnilniku že pred izvajanjem programa pripravile
določene vsebine namenjene preizkušanju programa.
SM
ukaz nadomešča ročni vnos oz. pripravo začetnih vrednosti v pomnilniku pred
preizkušanjem programa.
Primer:
SM
$2000 10 11 10 12 'a'
; v pomnilnik se ob nalaganju programa vnesejo
vsebine:
$2000:
$0A
$2001:
$0B
$2002:
$0A
$2003:
$0C
$2004: $61