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 programmable rom (prom) - computer memory, Explain the Programm...

Explain the Programmable ROM (PROM) - Computer Memory? This is a kind of ROM that can be programmed using special equipment it can be written to, but only once and this is usef

4, Ask question 4#Minimum 100 words accepted#

Ask question 4#Minimum 100 words accepted#

What is system conception, What is system conception? It deals with gen...

What is system conception? It deals with genesis of an application and formulating tentative needs. The purpose of the system conception is to defer details and understand what

How to fix an asic-based design from easiest to most extreme, How to fix an...

How to fix an ASIC-based design from easiest to most extreme? There are different ways to fix an ASIC-based design as given below: Initially, assume some reviews fundamentally.

Synchronization latency problem, Synchronization Latency Problem:  If two s...

Synchronization Latency Problem:  If two simultaneous processes are performing remote loading, then it is not recognized by what time two processes will load, as the issuing proces

Determine any three restrictions that apply to class members, a. Determine ...

a. Determine any three restrictions that apply to class members. b. Is it possible for single class to be a friend of another class? Illustrate this using a suitable C++ program

What is the task of the pass 2 in a two-pass assembler, In a two-pass assem...

In a two-pass assembler, the task of the Pass II is to? Ans. The task of the Pass II is to synthesize the target program in a two-pass assembler.

Explain how presentation layer helps in establishing, Explain how presentat...

Explain how presentation layer helps in establishing and processing data in End to End layers. The idea of the presentation layer is to stand for information to the communicati

Architecture, write a program in assembly language using emu8086 so that th...

write a program in assembly language using emu8086 so that the input string can contain both lower and upper case letters and any other character and the output will be the reverse

Unit resolution, Unit Resolution: By assuming that we knew the sentenc...

Unit Resolution: By assuming that we knew the sentence as "Tony Blair is prime minister or may the moon is made of blue cheese", is true or we later found out that the moon is

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