Explain call and return statements, Computer Engineering

Assignment Help:

Q. Explain Call and Return Statements?

CALL:

      CALL X    Procedure Call to procedure/function named X

  CALL instruction causes the following to happen: 

1.  Decrement the stack pointer so that we won't overwrite last thing put on stack

(SP <---SP - 1)

901_Call and Return Statements.png

Figure: Call and Return Statements

2.  The contents of PC that is pointing to NEXT instruction the one just after CALL is pushed onto stack and M [SP] <--- PC.

3.  JMP to X address of the start of subprogram is put in PC register.This is all a jump does. So we go off to the subprogram though we have to remember where we were in calling program which means that we should remember where we came from so that we can get back there again. 

PC <--- X 

RETN:

RETN      Return from procedure.   

RETN instruction causes following to happen: 

1.  Pops the stack to produce an address/label.If correctly used, the top of the stack will comprise the address of next instruction after the call from that we are returning; it's this instruction with that we want to resume in calling program.

2.  Jump to popped address it implies that put the address into PC register.

 PC <---  top of stack value; Increment SP.


Related Discussions:- Explain call and return statements

C++, At a shop of marbles, packs of marbles are prepared. Packets are named...

At a shop of marbles, packs of marbles are prepared. Packets are named A, B, C, D, E …….. All packets are kept in a VERTICAL SHELF in random order. Any numbers of packets with thes

Define electronic data interchange, Electronic Data Interchange (EDI ) is u...

Electronic Data Interchange (EDI ) is used by companies for transactions that happen on regular basis to a pre-determined format. It is one of the electronic commerce technologies.

What is self reference, What is self reference?  The Turing machine tha...

What is self reference?  The Turing machine that ignores its input and prints out a copy of its own description,   we call this as SELF. There is a computable function q: €*€*,

Describe language processing activities, Describe language processing activ...

Describe language processing activities? There are two different kinds of language processing activities: a. Program generation activities b. Program execution activities

Boiler troubles, Differences between internal and external treatment in boi...

Differences between internal and external treatment in boiler

Produce a sequence diagram for the task add, This assignment is based on th...

This assignment is based on the 'Swansea Docklands Heritage Society' case study attached.  The assignment is the third of three related submissions, all based on the Swansea Dockla

Illustrate edge-triggered flip-flops, Q. Illustrate Edge-Triggered flip-flo...

Q. Illustrate Edge-Triggered flip-flops ? Edge-triggered flip-flop is used to synchronize state change at the time of a clock pulse transition in place of constant level. A num

Parallel computer architecture , Parallel Computer Architecture Intr...

Parallel Computer Architecture Introduction We have talked about the classification of parallel computers and their interconnection networks in that order in units 2 and

When should we stop testing, When should you stop testing? It is quite ...

When should you stop testing? It is quite complex to determine as many modern software applications are so complex and run in like an interdependent environment that complete t

Describe the horizontal frequency or cycle, Q. Describe the Horizontal Freq...

Q. Describe the Horizontal Frequency or cycle? Horizontal Frequency: The time to scan one line connecting the right edge to left edge of the screen horizontally is known as 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