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

Do we require an x server to run in batch mode for gimp, Yes, you have to h...

Yes, you have to have some form of X server (unless you're running Windows, of course). It requires an X server for image processing, and for font manipulation. Though, if you wish

Different possible handover scenarios in a gsm network, Problem: (a) C...

Problem: (a) Cellular systems are based on two types of multiplexing, what are those two types of multiplexing? Describe how they are used to improve channel allocation in cel

Data stream and instruction stream-flynn’s classification, Data Stream an...

Data Stream and Instruction Stream The term 'stream' refers to an order or flow of either data operated or instructions on by the computer. In the complete chain of instructi

Digital Design, Design a serial 2’s complementer with a shift register and ...

Design a serial 2’s complementer with a shift register and a flip-flop

Learning weights in perceptrons, Learning Weights in Perceptrons: Furt...

Learning Weights in Perceptrons: Furthermore details are we will look at the learning method for weights in multi-layer networks next lecture. Thus the following description o

How do you turn off cookies for one page in your site, How do you turn off ...

How do you turn off cookies for one page in your site?  Use the Cookie. Abandon Property which Gets or sets the discard flag set by the server. When true, this property instruc

What is the last entry in all bdc tables, What is the last entry in all BDC...

What is the last entry in all BDC tables? In all BDC tables the last entry is to save the data by using the field name BDC_OKCODE and a field value of '/11'.

Which electro mechanical switch had fewer moving parts, The             el...

The             electro mechanical switch (developed in 1938) had fewer moving parts than earlier switches. (A)  No. 1ESS                                 (B)  Strowger (

Define various system, Define various system? Single job system: Only...

Define various system? Single job system: Only one program may be run at a time, and therefore only one person might be work on a machine at one time.  Multi job system:

Explain i/o buffer and advantage of buffering, What is an I/O buffer? What ...

What is an I/O buffer? What is the advantage of buffering? Is buffering always effective? Justify your answer with help of an example.   One type of I/O requirement arises from

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