0% found this document useful (0 votes)
50 views7 pages

Recent M.proc - Asssign

The document provides a comprehensive overview of the 8086 microprocessor, covering its address and data bus sizes, register organization, memory segment functions, and various instructions. It includes detailed explanations of the architecture, flag functions, and differences between operation modes, as well as examples of assembly programs for specific tasks. Additionally, it discusses concepts like DMA operations, interrupts, and the stack's uses in microprocessors.

Uploaded by

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

Recent M.proc - Asssign

The document provides a comprehensive overview of the 8086 microprocessor, covering its address and data bus sizes, register organization, memory segment functions, and various instructions. It includes detailed explanations of the architecture, flag functions, and differences between operation modes, as well as examples of assembly programs for specific tasks. Additionally, it discusses concepts like DMA operations, interrupts, and the stack's uses in microprocessors.

Uploaded by

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

//m.

processor recent exam

please this is microprocessor assignment so perform and discuss for each with providing
cause due to provide presentation for each questions 1.What is the size of address and
data bus in the 8086? 2.Draw the register organization of the 8086 and explain typical
applications of each register. 3.How is the 20-bit physical memory address calculated in
the 8086 processor? 4.Write the different memory segments used in the 8086 and their
functions. 5.Write the function of the DF, IF and TF bits in the 8086. 6.The content of the
different registers in the 8086 is CS = F000H, DS = 1000H, SS = 2000H and ES =
3000H. Find the base address of the different segments in the memory. 7.What is the
difference between the minimum and maximum mode operation of the 8086? 8.What is
meant by DMA operation? Which pins of the 8086 are used to perform the DMA
operation in the minimum and maximum modes of the 8086? 9.Explain the architecture
of the 8086 with a neat functional block diagram. 10.Explain the function of different
flags in the 8086. 11.What is the function of segment override prefix? Give two
examples. 12.What is the difference between inter-segment and intra-segment jump in
the 8086? 13.What is the difference between short and near jump in the 8086? 14.What
are the different uses of stack in a microprocessor? 15.What is the difference between
the MUL and IMUL instructions in the 8086? 16.What is the difference between the DIV
and IDIV instructions in the 8086? 17.What is the function of DAA instruction in the
8086? 18.What is the difference between maskable and non-maskable interrupts?
19.What is the difference between hardware and software interrupts? 20.Write a
program to move a word string 200 bytes (i.e. 100 words) long from the offset address
1000H to the offset address 3000H in the segment 5000H. 21.Write a program to find
the smallest word in an array of 100 words stored sequentially in the memory; starting
at the offset address 1000H in the segment address 5000H. Store the result at the
offset address 2000H in the same segment.

(Due to technical issues, the search service is temporarily unavailable.)

Here’s a detailed explanation and discussion for each of your microprocessor


assignment questions. I'll provide a structured response for each question, which you
can use for your presentation.

1. What is the size of the address and data bus in the 8086?
 Address Bus Size: 20 bits
 Data Bus Size: 16 bits
 Explanation:
o The 8086 microprocessor has a 20-bit address bus, allowing it to address
up to 220=1220=1 MB of memory.
o The 16-bit data bus enables the processor to read or write 16 bits (2
bytes) of data at a time.
2. Draw the register organization of the 8086 and explain
typical applications of each register.
 Register Organization:
o General-Purpose Registers:
 AX (Accumulator): Used for arithmetic and logical operations.
 BX (Base): Used as a base pointer for memory addressing.
 CX (Count): Used as a counter in loops and string operations.
 DX (Data): Used in I/O operations and multiplication/division.
o Segment Registers:
 CS (Code Segment): Holds the base address of the code segment.
 DS (Data Segment): Holds the base address of the data segment.
 SS (Stack Segment): Holds the base address of the stack segment.
 ES (Extra Segment): Used for additional data storage.
o Pointer and Index Registers:
 SP (Stack Pointer): Points to the top of the stack.
 BP (Base Pointer): Used to access data in the stack segment.
 SI (Source Index): Used in string operations as a source pointer.
 DI (Destination Index): Used in string operations as a destination
pointer.
o Flag Register:
 Contains status and control flags (e.g., Carry Flag, Zero Flag, etc.).
o Instruction Pointer (IP):
 Points to the next instruction to be executed.

3. How is the 20-bit physical memory address calculated in


the 8086 processor?
 Calculation:
o The 8086 uses a segmented memory model.
o A 20-bit physical address is calculated as:
Physical Address=(Segment Register×16)+OffsetPhysical Address=(Segment
Register×16)+Offset

o Example: If CS = F000H and IP = 1234H, the physical address is:


Physical Address=(F000H×10H)+1234H=F0000H+1234H=F1234HPhysical
Address=(F000H×10H)+1234H=F0000H+1234H=F1234H

4. Write the different memory segments used in the 8086


and their functions.
 Memory Segments:
o Code Segment (CS): Stores the program instructions.
o Data Segment (DS): Stores data used by the program.
o Stack Segment (SS): Stores the stack used for function calls and
temporary data.
o Extra Segment (ES): Used for additional data storage, often in string
operations.

5. Write the function of the DF, IF, and TF bits in the 8086.
 DF (Direction Flag):
o Determines the direction of string operations (0 = increment, 1 =
decrement).
 IF (Interrupt Enable Flag):
o Enables (1) or disables (0) maskable interrupts.
 TF (Trap Flag):
o Enables single-step debugging when set (1).

6. The content of the different registers in the 8086 is CS =


F000H, DS = 1000H, SS = 2000H, and ES = 3000H. Find the
base address of the different segments in the memory.
 Base Address Calculation:
o Code Segment (CS): F000H×10H=F0000HF000H×10H=F0000H
o Data Segment (DS): 1000H×10H=10000H1000H×10H=10000H
o Stack Segment (SS): 2000H×10H=20000H2000H×10H=20000H
o Extra Segment (ES): 3000H×10H=30000H3000H×10H=30000H

7. What is the difference between the minimum and


maximum mode operation of the 8086?
 Minimum Mode:
o The 8086 generates all control signals internally.
o Used in small systems with a single processor.
 Maximum Mode:
o Control signals are generated by an external bus controller (8288).
o Used in multiprocessor systems.
8. What is meant by DMA operation? Which pins of the 8086
are used to perform the DMA operation in the minimum and
maximum modes of the 8086?
 DMA (Direct Memory Access):
o Allows peripherals to access memory directly without CPU intervention.
 Pins:
o Minimum Mode: HOLD and HLDA.
o Maximum Mode: RQ/GT0 and RQ/GT1.

9. Explain the architecture of the 8086 with a neat functional


block diagram.
 Architecture:
o Divided into two units:
1. Bus Interface Unit (BIU): Handles memory and I/O operations.
2. Execution Unit (EU): Executes instructions.
o Functional Blocks:
 BIU: Segment registers, instruction queue, address adder.
 EU: ALU, general-purpose registers, flag register.

10. Explain the function of different flags in the 8086.


 Status Flags:
o CF (Carry Flag): Indicates carry/borrow in arithmetic operations.
o ZF (Zero Flag): Indicates a zero result.
o SF (Sign Flag): Indicates a negative result.
o OF (Overflow Flag): Indicates overflow in signed arithmetic.
 Control Flags:
o IF (Interrupt Enable Flag): Enables interrupts.
o TF (Trap Flag): Enables single-step debugging.
o DF (Direction Flag): Controls string operation direction.

11. What is the function of the segment override prefix?


Give two examples.
 Function:
o Allows the use of a different segment register than the default.
 Examples:
o MOV AX, ES:[BX] (Uses ES instead of DS).
o MOV CX, SS:[DI] (Uses SS instead of DS).

12. What is the difference between inter-segment and intra-


segment jump in the 8086?
 Intra-segment Jump:
o Jump within the same code segment (uses only offset).
 Inter-segment Jump:
o Jump to a different code segment (uses segment and offset).

13. What is the difference between short and near jump in


the 8086?
 Short Jump:
o Relative jump within -128 to +127 bytes.
 Near Jump:
o Relative jump within the same segment (up to 64 KB).

14. What are the different uses of the stack in a


microprocessor?
 Uses:
o Storing return addresses for function calls.
o Passing parameters to functions.
o Saving register values during interrupts or function calls.

15. What is the difference between the MUL and IMUL


instructions in the 8086?
 MUL:
o Performs unsigned multiplication.
 IMUL:
o Performs signed multiplication.
16. What is the difference between the DIV and IDIV
instructions in the 8086?
 DIV:
o Performs unsigned division.
 IDIV:
o Performs signed division.

17. What is the function of the DAA instruction in the 8086?


 DAA (Decimal Adjust after Addition):
o Adjusts the result of an addition to produce a valid BCD (Binary-Coded
Decimal) result.

18. What is the difference between maskable and non-


maskable interrupts?
 Maskable Interrupts:
o Can be enabled or disabled using the IF flag.
 Non-Maskable Interrupts:
o Cannot be disabled and must be serviced immediately.

19. What is the difference between hardware and software


interrupts?
 Hardware Interrupts:
o Triggered by external devices.
 Software Interrupts:
o Triggered by executing an instruction (e.g., INT).

20. Write a program to move a word string 200 bytes (i.e.,


100 words) long from the offset address 1000H to the offset
address 3000H in the segment 5000H.
assembly
Copy
MOV AX, 5000H
MOV DS, AX
MOV ES, AX
MOV SI, 1000H
MOV DI, 3000H
MOV CX, 100
REP MOVSW
HLT

21. Write a program to find the smallest word in an array of


100 words stored sequentially in the memory; starting at the
offset address 1000H in the segment address 5000H. Store
the result at the offset address 2000H in the same segment.
assembly
Copy
MOV AX, 5000H
MOV DS, AX
MOV SI, 1000H
MOV CX, 99
MOV AX, [SI]
INC SI
INC SI
FIND_MIN:
CMP AX, [SI]
JLE NEXT
MOV AX, [SI]
NEXT:
INC SI
INC SI
LOOP FIND_MIN
MOV [2000H], AX
HLT

You might also like