Stack operation and interrupts in microprocessor, Computer Engineering

Assignment Help:

Let us review the operation of the stack within the 68HC11, the stack is a defined area of RAM which is last in first out register (LIFO) . Access to the stack is made via a stack pointer (SP). In the 68HC11 there is only one stack pointer and it is initialised by the LDS command. To transfer data onto the stack we can use the command PSHA or PSHB i.e. push register A or B onto the stack. To remove data simply pull it i.e PULA or PULB, likewise the index registers may be stacked  etc.

      PSHA Push A onto Stack
      PSHB  Push B onto Stack
      PSHX  Push X onto Stack
      PSHY  Push Y onto Stack
      PULA Pull A onto Stack
      PULB  Pull B onto Stack
      PULX  Pull X onto Stack
      PULY  Pull Y onto Stack

Every time data is 'Pushed' onto the stack the Stack pointer is decrements accordingly. The stack is used often by the micro controller for temporary holding data, if a subroutine occurs, the processor stacks the return address and upon the receipt of the RTS command, it pulls the return address automatically. During an interrupt the processor stacks the full details of itself i.e.

  SP    Condition code  
  SP-1    Accumulator A
  SP-2    Accumulator B
  SP-3    Index register X high
  SP-4    Index register X low
  SP-5    Index register Y high
  SP-6    Index register Y low
  SP-7    return address High
  SP-8    Return address Low 
  SP-9    Stack pointer after interrupt

Therefore great care should be taken when using the stack as during an interrupt or subroutine if you place data on the stack you must remove the data before you return from it.


Related Discussions:- Stack operation and interrupts in microprocessor

Capacity and access speed of hard disk, Capacity and access speed: PC ...

Capacity and access speed: PC hard disk drive capacity (measured in GB). The vertical axis is logarithmic, so the accurate line corresponds to exponential growth.  By using

Software, is c++ is language or any software

is c++ is language or any software

Classification according to pipeline configuration, Classification accordin...

Classification according to pipeline configuration: According to the configuration of a pipeline, the following parts are recognized under this classification: Unifunct

Define side tone is essential in telephone communication, A certain amount ...

A certain amount of side tone is essential in telephone communication. Ans: It is true that a specific amount of side tone is necessary in telephone communication.

. net is compile time or runtime environment, . NET is Compile Time OR RunT...

. NET is Compile Time OR RunTime Environment?   .Net's framework has CLS,CTS and CLR.CTS checks declaration of types at the time when u write code and CLS explains some rules a

Write the program to use arrays, In class SlotCollection, remove the fields...

In class SlotCollection, remove the fields slot1, slot2, slot3 and slot4 and replace them by an array of slots. Modify the rest of the program to work using this array. There is

Data packets - universal serial bus, Data packets: A data packet consi...

Data packets: A data packet consists of the PID which is followed a 16-bit CRC and by 0-1023 bytes of data payload (up to 1024 in high speed and at most 8 at low speed) The

Operation of micro-programmed control unit, Micro-instructions are stored i...

Micro-instructions are stored in control memory. Address register for control memory comprises the address of subsequent instruction which is to be read. Control memory Buffer Regi

Write Your Message!

Captcha
Free Assignment Quote

Assured A++ Grade

Get guaranteed satisfaction & time on delivery in every assignment order you paid with us! We ensure premium quality solution document along with free turntin report!

All rights reserved! Copyrights ©2019-2020 ExpertsMind IT Educational Pvt Ltd