Returns and procedures definitions in 8086, Computer Engineering

Assignment Help:

Q. Returns and Procedures definitions in 8086?

8086 microprocessor supports RET and CALL instructions for procedure call. CALL instruction not only branches to indicate address but also pushes return address onto the stack. Additionally it also initialized IP with address of the procedure. RET instructions basically pops the return address from stack. 8086 supports two types of procedure call. These are NEAR and FAR calls.

NEAR procedure call is also called as Intrasegment call as called procedure is in same segment from that call has been made. Hence only IP is stored as return address. IP can be stored on stack as:

912_Returns and Procedures definitions in 8086.png

Please note that the growth of stack is towards stack segment base. So stack becomes full on an offset 0000h. Also for push operation, we decrement SP by 2 as stack is a word stack (word size in 8086 = 16 bits) whereas memory is byte organised memory.

FAR procedure call which is also known as intersegment call is a call made to separate code segment. So the control will be transferred outside current segment. So both IP and CS need to be stored as return address. These values on stack after the calls looks as below:

597_Returns and Procedures definitions in 80861.png

When 8086 executes FAR call it first stores contents of code segment register followed by contents of IP on to the stack. A RET from NEAR procedure. Pops the 2 bytes in IP. RET from the FAR procedure pops 4 bytes from the stack.


Related Discussions:- Returns and procedures definitions in 8086

What are the advantagesof fact finding, What are the Advantagesof fact find...

What are the Advantagesof fact finding - Analyst obtains reliable data - It's possible to see exactly what is being done -  This is an inexpensive method in comparison o

Which header file is used for screen handling function, Which header file i...

Which header file is used for screen handling function:- The header files stdio.h having definitions of constants, macros and types, along with function declarations for stan

Determine about the logical shift, Logical shift A logical shift operat...

Logical shift A logical shift operation transfers 0 through serial input. We apply symbols shl and shr for logical shift left and shift right microoperations, examples:. R1

Procedure level- levels of parallel processing, Procedure Level Here, p...

Procedure Level Here, parallelism is accessible in the form of parallel executable procedures. In this situation, the design of the algorithm plays a main role. For example eac

Describe types of complements, Q. Describe types of complements? There ...

Q. Describe types of complements? There are two kinds of complements for a number of base (also known as radix) r. These are known as r's complement and (r- 1)'s complement. Fo

Non-uniform memory access model (numa), Non-Uniform Memory Access Model (NU...

Non-Uniform Memory Access Model (NUMA) In shared memory multiprocessor systems, local memories can be joined with every processor. The group of every local memories form the gl

Why cyclomatic complexity is important, Why cyclomatic complexity is import...

Why cyclomatic complexity is important? Cyclomatic complexity is computed using a graph that verifies the control flow of the program. The nodes of the graph correspond to the

What is ram bus technology, What is RAM Bus technology? The key feature...

What is RAM Bus technology? The key feature of RAM bus technology is a fast signalling method used to transfer information among chips. Instead of using signals that have volta

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