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

What is arithmetic pipeline, What is arithmetic pipeline?  Pipeline ari...

What is arithmetic pipeline?  Pipeline arithmetic units are usually found in very high speed computers. They are used to execute floating point operations, multiplication of fi

What is socket, A socket is one end-point of a two-way communication link a...

A socket is one end-point of a two-way communication link among two programs running on the network. Socket classes are used to show the connection among a client program and a ser

Internal structure of agents - artificial intelligence, Internal Structure ...

Internal Structure of Agents: We have looked at agents in terms of their external influences and behaviors: they put in from the surroundings and perform rational actions to a

Explain the different types of buses with neat diagram, Explain the differe...

Explain the different types of buses with neat diagram. When a word of data is transferred among units, all the bits are transferred in parallel over a set of lines known as bu

What are the advantages of inheritance in c++, It allows code reusability. ...

It allows code reusability. Reusability saves time in program development. It encourages the reuse of proven and debugged high-quality software, thus decreasing problem after a sys

What are the external storage systems, External storage systems A numb...

External storage systems A number of different types of external memory devices are available now. Some of these are considered below (hard drives haven't been mentioned as th

What is verilog function, What is Verilog function - A function is una...

What is Verilog function - A function is unable to enable a task however functions can enable other functions. - A function would carry out its required duty in zero simula

Show basic concepts of permutation, Q. Show Basic concepts of permutation? ...

Q. Show Basic concepts of permutation? Let us look at the basic concepts of permutation with respect to interconnection network.  Let us say the network has set of n input node

Explain the working of assembler, Explain the working of Assembler? An ...

Explain the working of Assembler? An assembler is the computer program for translating assembly language fundamentally a mnemonic representation of machine language into object

How to detect a sequence of 1101, Use 4 D-bascules connected in serial all ...

Use 4 D-bascules connected in serial all synchronized with the similar CLK. Then connect all 4 outputs, & 2nd output must reverse, of the D-bascule to an AND logic. The output of t

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