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

Discussion., Functionality first and then Security?

Functionality first and then Security?

Computer organization, using one-address instructions,write a program to co...

using one-address instructions,write a program to compute X=A-BxC

What are drawbacks of electronic data interchange processes, What are the d...

What are the drawbacks of Electronic Data Interchange processes? Disadvantages of EDI processes are given below: 1. The X12 standard is so huge and general 2. Electron

Implementation of 3 line to 8 line decoder, Implement the following functio...

Implement the following function using a 3 line to 8 line decoder. S (A,B,C) =   ∑ m(1,2,4,7) C (A,B,C) =  ∑ m ( 3,5,6,7)         Ans. Given function S (A,B,C) = m (1,2,4,7)

Minimum total number of shelv, Write a program that finds the minimum total...

Write a program that finds the minimum total number of shelv, C/C++ Programming

What is SSTF, SSTF stands for ? Ans. Shortest-Seek-time-first scheduli...

SSTF stands for ? Ans. Shortest-Seek-time-first scheduling.

What is socket inheritance, What is socket inheritance? Explain. Socke...

What is socket inheritance? Explain. Socket Inheritance: In a socket inheritance a reference count mechanism is utilized. Whenever a socket is first created, the system set

Define structural classification, Structural Classification Flynn's cla...

Structural Classification Flynn's classification explains the behavioural idea and doesn't take concern into the computer's structure. Parallel computers can be categorized bas

What is python?, Python is an interpreter, interactive, object-oriented pro...

Python is an interpreter, interactive, object-oriented programming language. It is frequently compared to Tcl, P e r l, Scheme or Java. Python combines remarkable power with v

Explain about the various uses of artificial intelligence, Discuss the use ...

Discuss the use of Artificial intelligence techniques in E-Commerce applications. Explain about the various uses of Artificial Intelligence in Medicine field. Justify it with pr

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