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

Explain the working principle of hard disk, Question : a) Hard disk is ...

Question : a) Hard disk is an important component of a computer. What type of memory is it? b) With the help of a diagram describe its features. c) Explain its working pr

Explain loop level of parallel processing, Loop Level At this stage, fo...

Loop Level At this stage, following loop iterations are candidates for parallel execution. Though, data dependencies among subsequent iterations can restrict parallel execution

Program which take input two images by homography, The goal of this questio...

The goal of this question is to create a program that takes as input two images that are related by a homography, and which "warps" the second image (piscine2.bmp) to align with th

Digital electronics, what is Asynchronous Finite State Machines?

what is Asynchronous Finite State Machines?

What is mqseries channel, Channel means logical communication link. There a...

Channel means logical communication link. There are two parts of channels a) Message channel, b) MQI channel   1) Mesage channel use for communication among QMgr to Q

Functionality of hyper thread processor, Hyper-threading works by duplicati...

Hyper-threading works by duplicating those sections of processor that kept the architectural state-but not duplicates the main implementation resources. This allows a Hyper-threadi

What is the gray equivalent of decimal number 25, What is the Gray equivale...

What is the Gray equivalent of  (25) 10 Ans. Gray equivalent of (25) 10 : The Decimal number 25 has binary equivalent as (00100101) 2 The left most bits (MSB) into gray

What is multiprogramming, What is multiprogramming or multitasking? The...

What is multiprogramming or multitasking? The operating system manages the concurrent implementation of several application programs to make the best possible uses of computer

Advantages of edi (electronic data interchange), Advantages of EDI 1.  ...

Advantages of EDI 1.  EDI replaces paper transactions with electronic transactions therefore it saves times and speeds up transactions. 2.  It gives a legal record of busine

Find out how many words can be formed from daughter, Find out how many word...

Find out how many words can be formed out of the letters of the word DAUGHTER such that (i)  The vowels are all time together. (ii)  The vowels occupy even places.   Ans:

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