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

Call the user methods by creating the object, Make a class library and desc...

Make a class library and describe class 'User'. In User class describe the public, protected and Friend functions. Make a console application andadd a reference to this library and

Enum statement differ from a typedef statement, How does an enumstatement d...

How does an enumstatement differ from a typedef statement? Typedef statement permits user to define an identifier that would show an exiting data type. The user-defined data

Convert following decimal numbers into 9s & 10s complement, Q. Convert the ...

Q. Convert the following decimal numbers into 9s & 10s complement: 1) 3654 2) 99 3) 18.293 Q. Convert the following binary numbers into 1s& 2s complement: 1) 1101

Illustrate the working of flip-flops, Q. Illustrate the working of FLIP-FLO...

Q. Illustrate the working of FLIP-FLOPS? A flip-flop is a binary cell that stores 1-bit of information. It itself is a sequential circuit. We know that flip-flop can change its

Show system call for cloning, Show System call for cloning.  Standard f...

Show System call for cloning.  Standard form of Clone function is as follows: Int clone (Int (*FN) (), void *child stack, Int flag, intargs,); Parameter FN is Pointer fro

What is the cih, CIH, also known  as Chernobyl or Spacefiller, is a Microso...

CIH, also known  as Chernobyl or Spacefiller, is a Microsoft Windows computer virus which first emerged in 1998. It is one of the most damaging viruses, overwriting critical inform

Explain the potential role of information technology, Question 1: Descr...

Question 1: Describe the five maturity levels of KM that an organization faces when adopting the Frid's KM framework. Question 2: (a) Describe three major issues that

Explain the resources of an operating system, Explain the resources of da...

Explain the resources of data structure is used by an operating system to keep track of process information? Explain A process is a program in execution. An operating system

What is load testing, Load testing is to test that if the application works...

Load testing is to test that if the application works well with the loads that result from large number of concurrent users, transactions and to verify whether it can handle peak u

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