0% found this document useful (0 votes)
19 views6 pages

MIC Ch1,2

The document provides an overview of the 8086 microprocessor, detailing its features, architecture, and functional components such as the Execution Unit (EU) and Bus Interface Unit (BIU). It also explains the general-purpose registers, instruction queue, pipelining, segmentation, and the process of assembly language programming including tools like editors, assemblers, linkers, and debuggers. Additionally, it covers assembler directives and their functions in programming.

Uploaded by

pritish8754
Copyright
© © All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as PDF, TXT or read online on Scribd
0% found this document useful (0 votes)
19 views6 pages

MIC Ch1,2

The document provides an overview of the 8086 microprocessor, detailing its features, architecture, and functional components such as the Execution Unit (EU) and Bus Interface Unit (BIU). It also explains the general-purpose registers, instruction queue, pipelining, segmentation, and the process of assembly language programming including tools like editors, assemblers, linkers, and debuggers. Additionally, it covers assembler directives and their functions in programming.

Uploaded by

pritish8754
Copyright
© © All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as PDF, TXT or read online on Scribd
You are on page 1/ 6

Program:Computer Engineering

Microprocessors (22415)

1. 8086 -16 bit Microprocessor ii) Draw the neat labelled functional
1. List features of 8086 microprocessor. block diagram of 8086.
2. State number of data lines and number of
address lines used in 8086 microprocessor
1) It has a 16 bit data bus
2) 8086 has a 20 bit address lines can access up
to.(220= 1MBmemory locations.
3) It can support up to 64K I/O ports.
4) It provides 16-bit registers.
AX,BX,CX,DX,CS,SS,DS,ES,BP,SP,SI,DI,IP & FLAG
REGISTER.
5) It has multiplexed address and data bus AD0-
AD15 and A16 – A19.
6) 8086 is designed to operate in two modes,
Minimum and Maximum.
7) It can prefetches up to 6 instruction bytes from
memory and queues them in order to speed up
instruction execution.
8) Interrupts:-8086 has 256 vectored interrupts.
9) Provides separate instructions for string
manipulation.
10) Operating clock frequencies 5MHz, 8MHz,
10MHz. 2. Iii)Write the function of BIU and EU./
2.Questions Based on Architecture of 8086: FUNCTIONS OF EXECUTION UNIT:
1.To tell BIU to fetch the instructions or data from
i)List the names of segment register of 8086.
memory
2.To decode the instructions.
Segment registers in 8086 microprocessor:
3.To generate different internal and external
1. Code Segment register(CS)
controls signal.
2. Data Segment register(DS)
4.To execute the instructions.
3. Stack Segment register(SS)
5.To perform Arithmetic and Logic Operations
4. Extra Segment register(ES)
FUNCTIONS OF BUS INTERFACE UNIT:
1.Communication with External devices and
peripheral including memory via bus.
2.Fetch the instruction or data from memory.
3.Read data from the port.
4.Write the data to memory and port.
5.Calculation of physical address for accessing the
data to and from memory
6. Supports instruction queuing

Page 1 of 6
Program:Computer Engineering
Microprocessors (22415)

iv) Name the general purpose registers of 8086


giving brief description of each.
1 AX (Accumulator) – Used to store the result for
arithmetic / logical operations
2. BX – Base – used to hold the offset address or
data in indirect addressing mode.
3. CX – acts as a counter for repeating or looping
instructions.
4. DX –Used with AX to hold 32 bit values during
multiplication and division.
5. BP – Base Pointer BP can hold offset address
of any location in the stack segment.
6. SP –Stack Pointer – Contains the offset of the
top of the stack.
7. SI – Source Index – Used in string movement
instructions. Holds offset address
of source data in Data segment
1) With the use of segmentation the instruction
8.DI – Destination Index –
and data is never overlapped.
Used to hold offset address of Extra segment.
2) The major advantage of segmentation is
9. IP – Instruction Pointer – Contains 16 bit
Dynamic relocatability of program which means
offset address of instruction
that a program can easily be transferred from one
code memory segment to another code
V)Describe instruction queue in detail/
memory segment without changing the effective
Explain the concept of pipelining
address.
To implement any instruction first it is to be
3) Segmentation can be used in multi-user time
fetched, then decoded and then executed. The
shared system.
fetching of an instruction involves its address to
4) Segmentation allows two processes to share
be sent out to the system memory and then
data.
sending back the instruction.
5) Segmentation allows you to extend the
While the EU is busy decoding or executing certain
addressability of a processor i.e., address up
instructions which do not need the buses, theBIU
ton1MB although the actual addresses to be
fetches next six instruction bytes and stores them
handled are of 16 bit size.
in a first-in-first-out (FIFO) register setcalled
6) Programs and data can be stored separately
queue.
The processor doesn't have to wait for the next from each other in segmentation.
instruction to be fetched as it is already made
available in the queue registers. Thus, the speed of 3. Describe the physical memory address
operation is enhanced. generation process in 8086 microprocessor.
This prefetching of next instruction while If, If DS=345AH and SI=13DCH. Calculate
another instruction is still being executed is physical address..
known as pipelining
3.Explain concept of segmentation with
diagram. /: Advantages of segmentation

Page 2 of 6
Program:Computer Engineering
Microprocessors (22415)

AC-Auxiliary Carry Flag This is set if a carry is


generated out of the lower nibble, (i.e. From D3
to D4 bit)to the higher nibble
Z-Zero Flag This flag is set if the result is zero
after performing ALU operations. Otherwise it is
reset.
S-Sign Flag This flag is set if the MSB of the
result is equal to 1 after performing ALU
operation , otherwise it is reset.
O-Overflow Flag This flag is set if an overflow
occurs, i.e. if the result of a signed operation is
large enough to be accommodated in destination
register
. Control Flags T-Trap Flag If this flag is set ,the
DS=345AH and SI=13DCHPhysical adress = processor enters the single step execution
DS*10H + SI = 345AH * 10H + 13DCH = mode.
345A0+13DC = 3597CH I-Interrupt Flag it is used to mask(disable) or
unmask(enable)the INTR interrupt.
Ex.2 Assume DS= 2632H, SI=4567H
DS : 26320H ……...0 added by BIU
+ SI : 4567H
---------------
2A887H

5. Draw flag register format of 8086. Explain


Trap and Overflow flag
)

Conditional /Status Flags


C-Carry Flag : It is set when carry/borrow is
generated out of MSB of result. (i.e D7 bit for 8-
bit operation, D15 bit for a 16 bit operation).
P-Parity Flag This flag is set to 1 if the lower byte
of the result contains even number of 1’s
otherwise it is reset.

Page 3 of 6
Program:Computer Engineering
Microprocessors (22415)

assembler will translate it to machine


2.The art of assembly language programming language.
b) It enables one to create, edit, save, copy
1.Define flowchart & algorithm/ and make modification in source file.
State an explain the steps involved in program Assembler
development/ Sketch any four symbols used in a) Assembler is a program that translates
flow chart assembly language program to the correct binary
1. Defining the problem: The first step in writing code for each instruction i.e. machine code and
program is to think very carefully about the generate the file called as object file with
problemthat the program must solve. extension .obj .
2. Algorithm: The formula or sequence of
b) It also displays syntax errors in the program, if
operations to be performed by the program can
any.
be specified as a step in general English is called
algorithm. c)It can be also be used to produce list (.lst) which
3. Flowchart: The flowchart is a graphically contains assembly language statements, binary
representation of the program operation or task. codes, and offset address for each instruction
4. Initialization checklist: Initialization task is to Linker
make the checklist of entire variables, constants, a) It is a programming tool used to convert
allthe registers, flags and programmable ports Object code into executable program.
5. Choosing instructions: Choose those b) It combines ,if requested ,more than one
instructions that make program smaller in size and separated assembled modules into one
moreimportantly efficient in execution. executable
6. Converting algorithms to assembly language module such as two or more assembly
program: Every step in the algorithm is converted
programs or an assembly language with C
into program statement using correct and efficient
program.
instructions or group of instructions.
c) It generates .EXE module
Debugger
a)Debugger is a program that allows the
execution of program in single step mode
under the control of the user.
b)The errors in program can be located and
corrected using a debugger.

3.Explain following assembler directives 1) DB 2)


2.State functions of following assembly
DW 3) DQ 4) DT 5) ? (Uninitialized value)
language programming tools
6) PTR 7) OFFSET 8)EQU 9) DUP 10) LABEL
1. Editor 2.Assembler 3.Linker 4.Deebugger
11)ALIGN 12) EVEN 13) ORG 14) DOSSEG 15)
STRUCT 16) DD
Editor
a) It is a program which helps to construct DB: - Define byte
assembly language program with a file • This is used to define a byte type variable
extension .asm, inright format so that the
Page 4 of 6
Program:Computer Engineering
Microprocessors (22415)

E.g. Num1 DB 36H


DW: -Define Word (16-bits)
• This is used to define a word (16-bit) type
variable
e.g. BLOCK DW 1234H, 3456H, 5678H :
Declare array of 3 words

DT :Define Ten byte .This directive is used to


to define a variable which is 10bytes in length
or to reserve 10 bytes of storage in memory.
NUM DT ? ; Allocate Ten memory locations;

EQU :Equate to
• This is used to declare symbols to which
some constant value is assigned
Num EQU 100
ORG : Originate
The directive ORG assigns the location
counter with value specified in the directive.
Example: ORG 2000H ; set location counter to
2000H
DUP: Duplicate memory location
This directive can be used to generate
multiple bytes or words with known as well as
un-initializedvalues.
eg TABLE DW 100 DUP(0) ; Create array of 100
words all contains data 0
ASSUME :
Assume directive is used to tell Assembler the
name of the logical segment it should use for
the specified segment.
Example:-Assume CS: MSBTE_CODE, DS:
MSBTE_DATA

SEGMENT:
The directive SEGMENT is used to indicate the
beginning of the logical segment
Examples:
My_data SEGMENT
…………….
Page 5 of 6
Program:Computer Engineering
Microprocessors (22415)

Page 6 of 6

You might also like