12.07.2015 Views

Kompendium - Datorteknik

Kompendium - Datorteknik

Kompendium - Datorteknik

SHOW MORE
SHOW LESS
  • No tags were found...

You also want an ePaper? Increase the reach of your titles

YUMPU automatically turns print PDFs into web optimized ePapers that Google loves.

Mnemonic Beskrivning Funktion FlaggorJSR A jump to subroutine SP = SP − 1, M(SP) = PC, PC = ARTS return from subroutine PC = M(SP), SP = SP + 1LDS A load stackpointer SP = M(A), M(A + 1)PUSH push acc. to stack SP = SP − 1, M(SP) = ARPULL pull acc. from stack AR = M(SP), SP = SP + 1Figur F.5: Instruktioner, som hanterar stacken. Vi använder här en predekrementstackpekare. SP pekar alltså på återhoppsadressen.Programmet i fig. F.5 utnyttjar hela programmermodellen. I fig. F.6 visas situationennär MEAN exekverar första gången. Det är asm-programmerarens uppgiftatt hålla reda på allt som finns i minnet. Om man inte aktar sig kan stacken växain i dataarean eller exekvering kan spåra ur och hamna i dataarean eller självmodifierandekod. På denna maskin finns det inget i arkitekturen som hindrar dessaotrevligheter.ARCCRProcessorc v zNSTART:MV1:MV2:MEAN:MinneLDS #FFFFLDX #TP1JSR MEAN...JSR MEANHuvudprogramSubrutinPCRTSXRTP1:DatareaSPTP2:MV1+1StackFigur F.6: Programmerarmodellen när subrutinen MEAN exekverar första gången.73

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

Saved successfully!

Ooh no, something went wrong!