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

Working on dreamweaver, Write your text, format text, insert picture throug...

Write your text, format text, insert picture through Object window or INSERT -> IMAGE. Insert Menu provides you all features which are available under the Object window. Modify men

Avoiding local minima of multi-layered networks, Avoiding Local Minima of m...

Avoiding Local Minima of multi-layered networks-Artificial intelligence : The error rate of multi-layered networks over a training set could be calculated as the number of mis

Show division and multiplication operation, Q. Show Division and multiplica...

Q. Show Division and multiplication operation? These operations can be represented as x + y = (N x   × 2 Ex-Ey + N y ) × 2 Ey and x-y = (N x × 2 Ex-Ey -N y ) × 2 Ey

Object-oriented program and cell controlled class architectu, Object-Orient...

Object-Oriented Program And Cell Controlled Class Architecture To the variety of scenarios, generic cell control architecture can be applied. An object oriented programming lan

What is error checking, What is error checking? It computes the error c...

What is error checking? It computes the error correcting code (ECC) value for the data read from the given sector and compares it with the corresponding ECC value read from the

What are batch systems, What are batch systems?  Batch systems are quit...

What are batch systems?  Batch systems are quite appropriate for implementing large jobs that need little interaction. The user can submit jobs and return later for the results

What is load-through or early restart, What is load-through or early restar...

What is load-through or early restart? When a read miss happens for a system with cache the needed word may be sent to the processor as soon as it is read from the main memory

The complexity of adding two matrices, T he complexity of adding two matric...

T he complexity of adding two matrices of order m*n is mn

Differentiate between protection and security, Differentiate between Protec...

Differentiate between Protection and Security Operating system contains a collection of objects, hardware or software. Every object has a unique name and can be accessed via a

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