28.07.2013 Views

priser! - Stone Oakvalley Studios

priser! - Stone Oakvalley Studios

priser! - Stone Oakvalley Studios

SHOW MORE
SHOW LESS

Create successful ePaper yourself

Turn your PDF publications into a flip-book with our unique Google optimized e-Paper software.

Maskinkodekurs for Amiga. Del 5<br />

Av Tonny Espeset<br />

I sist kurs så vi på flagg og betingede<br />

hopp. Dette betyr at vi nå har vært<br />

igjennom den mest sentrale teorien<br />

for å sette i gang å programmere<br />

assembler for alvorl For å gjøre dette<br />

er det viktig å ha en beskrivelse av<br />

alle de mest brukte maskinkodein­<br />

struksjonene. Hva gjør man for å<br />

skaffe en slik oversikt? Man kjøper<br />

en rådyr bok om emnet til 400 kroner<br />

ELLER man kjøper dette nummeret<br />

av DNH for en slikk og ingenting og<br />

får en kompaktoversikt GRATISI (Jeg<br />

fortjener en medalje for dette ... )<br />

Syntaks for kommandoer.<br />

Å lære seg de forskjellige kommandoene er<br />

langt enklere enn å forstå det vi hittil har vært<br />

igjennom. Har du klart å følge med så langt er det<br />

verste overstått.<br />

Det som er viktig å merke seg er at resultatet av<br />

en utført instruksjon ALL TID legges i registeret!<br />

adressen angitt på den høyre delen etter komma.<br />

Det som befinner seg på venstre del foran komma<br />

er ALL TID uforandret. Den venstre delen blir<br />

referert til som Source og den høyre som<br />

Destination. Disse kan variere av type.<br />

Eks:<br />

OOVE . W D7 , DO ; Innholdet i D7<br />

legges i DO<br />

SUB .L #1,$1000 ;Innholdet i longwordet<br />

som ligger i adresse<br />

$1000 og utover<br />

subtraheres med 1.<br />

Noen steder kan man bruke både adresseregis­<br />

ter, dataregister, en adresse eller direkte adresse­<br />

ring mens andre steder kan man bare bruke et<br />

utvalg av disse.<br />

Eks:<br />

ADO.W AO , $1000 ;Denne er ulovlig,<br />

ADD.W DO , $1000 ;mens denne er lovlig .. .<br />

Det virker kanskje noe vanskelig å måtte holde<br />

styr på hvilke kombinasjoner som er lov og ikke,<br />

men denne jobben klarer assembleren fint. Du får<br />

en grei feilmelding hvis den brukte kombinasjo­<br />

nen ikke er defmert. Da er det bare å se seg om<br />

etter en annen kombinasj on. Jeg har da heller ikke '<br />

skrevet hvilke kombinasjoner som er lovlige<br />

siden dette ville ta opp unødig mye plass.<br />

Som jeg har vært igjennom i et tidligere kurs<br />

kan du også bestemme hvor mange bits som skal<br />

bli påvirket av instruksjonen (med attributtene<br />

.B, .W og .L). Bare pass på å ikke skrive et word<br />

eller longword til en odde adresse, da vil antåge­<br />

lig maskinen låse seg.<br />

Til en del av instruksjonene følger det med<br />

eksempel. Disse er av hensyn til plassen ikke<br />

avsluttet med en R TS instruksj on. Med mindre du<br />

bruker Trace funksjonen (S

Hooray! Your file is uploaded and ready to be published.

Saved successfully!

Ooh no, something went wrong!