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

State the approaches to organizing stored program control, Determine the ap...

Determine the approaches to organizing stored program control There are 2 approaches to organizing stored program control: 1.  Centralized: In this control, all control equi

What is an operating system, What is an operating system? An operating...

What is an operating system? An operating system is system software which provides interface between hardware and user. The operating system gives the means for the proper uti

What are common reason for error massages while copying file, Q. What are c...

Q. What are common reason for error massages while copying file? While copying files with copy, DOS in encounters any error, it displays a suitable error massage. The common re

C LANGUAGE, 4) A positive integer is entered through the keyboard;write a ...

4) A positive integer is entered through the keyboard;write a function to find the binary equivalent of this number using recursion.

Spcc, Disadvantages of macro processor

Disadvantages of macro processor

Magnetic storage - computer architecture, Magnetic storage - computer archi...

Magnetic storage - computer architecture: Magnetic storage uses different type of patterns of magnetization on a magnetically coated surface to store information. Magnetic sto

Explain ip address structure, Q. Explain IP Address Structure? Internet...

Q. Explain IP Address Structure? Internet addresses are divided in five types of classes. Classes were designated A through E. class A address space enables a small number of n

Explain the concept of thread, The Concept of Thread A thread is a sequ...

The Concept of Thread A thread is a sequential flow of control within a process. A process is able to have one or more threads. Threads have their own register-values and progr

What is stack addressing, Q. What is Stack Addressing? In this addressi...

Q. What is Stack Addressing? In this addressing technique operand is implied as top of stack. It isn't explicit however implied. It employs a CPU Register known as Stack Pointe

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

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