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

What is an i/o buffer, What is an I/O buffer? I/O buffer: One ty...

What is an I/O buffer? I/O buffer: One type of input-output requirement arises from devices which have a very high character density as disks and tapes. With these chara

Explain crossbar exchange with all call processing steps, Explain crossbar ...

Explain crossbar exchange, with all call processing steps and diagrams. The fundamental idea of crossbar switching is to give a matrix of n x m sets of contacts with only n + m

What is a union, What is a union ? A union, like a structure, is a derive...

What is a union ? A union, like a structure, is a derived type. Unions follow the same syntax as structures but have members that share storage. A union type defines a set of alt

Prove using boolean algebra, Q.Prove using Boolean Algebra 1. X (X+Y) = ...

Q.Prove using Boolean Algebra 1. X (X+Y) = X 2. AB + AC + BC' = AC + BC' 3. (A+B+C) (A+B'+C') (A+B+C') (A+B'+C)=A 4. (A+B'+C) (AB+A'C) = (A+C) (A'+B) 5. XY + XZ + YZ

Explain quadratic probing with respect to hashing technique, Quadratic prob...

Quadratic probing: In the above case when the first insertion is made the probability of latest element being inserted in a certain position is 1/n    where n is the size of the a

Explain about barrier, Q. Explain about Barrier? Barrier: No actual tra...

Q. Explain about Barrier? Barrier: No actual transfer of data takes place in this mode unless all the processors involved in the communication execute a particular block, calle

Differences between internal and external fragmentation, Explain the differ...

Explain the differences between Internal and external fragmentation. Internal and external fragmentation (1) While memory allocated to a process is a little larger than th

Explain telnet, Explain Telnet Telnet is a Remote Login.

Explain Telnet Telnet is a Remote Login.

Representations or languages - artificial intelligence, Representations/Lan...

Representations/Languages Used: Many people are taught "AI" with the opening line: "The three most important things in "AI" are  representation, representation and representat

Payroll pc, Purpose: Payroll processing and storage for the client database...

Purpose: Payroll processing and storage for the client database (accessed from the Reception-PCover the network),word processing (reports etc.) and spreadsheets. Software: . • W

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