MP Viva Questions With Answers

Download as docx, pdf, or txt
Download as docx, pdf, or txt
You are on page 1of 13

Microprocessor Lab Viva Questions with Answers

1. What is a Microprocessor?
Microprocessor is a CPU fabricated on a single chip, program-controlled device, which fetches the
instructions from memory, decodes and executes the instructions.
2. What is Clock Speed ?
Clock speed is measured in the MHz and it determines that how many instructions a processor can
processed. The speed of the microprocessor is measured in the MHz or GHz.
3. What are the features of Intel 8086 ?
Features:

Released by Intel in 1978

Produced from 1978 to 1990s

A 16-bit microprocessor chip.

Max. CPU clock rate:5 MHz to 10 MHz

Instruction set: x86-16

Package: 40 pin DIP

16-bit Arithmetic Logic Unit

16-bit data bus (8088 has 8-bit data bus)

20-bit address bus - 220 = 1,048,576 = 1 meg

The address refers to a byte in memory.

In the 8088, these bytes come in on the 8-bit data bus. In the 8086, bytes at
even addresses come in on the low half of the data bus (bits 0-7) and bytes at
odd addresses come in on the upper half of the data bus (bits 8-15).

The 8086 can read a 16-bit word at an even address in one operation and at an odd address
in two operations. The 8088 needs two operations in either case.

The least significant byte of a word on an 8086 family microprocessor is at the


lower address.
4. What is Logical Address:?
A memory address on the 8086 consists of two numbers, usually written in hexadecimal and separated
by a colon, representing the segment and the offset. This combination of segment and offset is referred to
as a logical address
Logical address=segment: offset
5. What is The Effective Address:
In general, memory accesses take the form of the following example:
Mov ax, [baseReg + indexReg + constant]
This example copies a word sized value into the register AX.
Combined, the three parameters in brackets determine what is called the effective address, which is
simply the offset referenced by the instruction

6. What is Physical Address?


Physical memory address pointed by SEGMENT:OFFSET pair is calculated as:
Physical address = (<Segment Addr> * 10) + <Offset Addr>
7.What are the flags in 8086?
Carry flag, Parity flag, Auxiliary carry flag, Zero flag, Overflow flag, Trace flag, Interrupt flag,
Direction flag, and Sign flag.
8.Why crystal is a preferred clock source?
Because of high stability, large Q (Quality Factor) & the frequency that doesnt drift with aging. Crystal
is used as a clock source most of the times.
9. What is Tri-state logic?
Three Logic Levels are used and they are High, Low, High impedance state. The high and low are
normal logic levels & high impedance state is electrical open circuit conditions. Tri-state logic has a
third line called enable line.
10.What happens when HLT instruction is executed in processor?
The Micro Processor enters into Halt-State and the buses are tri-stated.
11.What is Program counter?
Program counter holds the address of either the first byte of the next instruction to be fetched for
execution or the address of the next byte of a multi byte instruction, which has not been completely
fetched. In both the cases it gets incremented automatically one by one as the instruction bytes get
fetched. Also Program register keeps the address of the next instruction.
12.Have you studied buses? What types?
There are three types of buses.
Address bus: This is used to carry the Address to the memory to fetch either Instruction or Data.
Data bus : This is used to carry the Data from the memory.
Control bus : This is used to carry the Control signals like RD/WR, Select etc.
13.What is the Maximum clock frequency in 8086?
5 Mhz is the Maximum clock frequency in 8086.
14.What is meant by Maskable interrupts?
An interrupt that can be turned off by the programmer is known as Maskable interrupt.
15.What is Non-Maskable interrupts?
An interrupt which can be never be turned off (ie. disabled) is known as Non-Maskable interrupt

16. What are the different functional units in 8086?


Bus Interface Unit and Execution unit, are the two different functional units in 8086.
17. What are the various segment registers in 8086?
Code, Data, Stack, Extra Segment registers
18. What does EU do?
Execution Unit receives program instruction codes and data from BIU, executes these instructions and
store the result in general registers.
19. Which Stack is used in 8086?
FIFO (First In First Out) stack is used in 8086.In this type of Stack the first stored information is
retrieved first.
20. What is SIM and RIM instructions?
SIM is Set Interrupt Mask-Used to mask the hardware interrupts.
RIM is Read Interrupt Mask-Used to check whether the interrupt is Masked or not.
21. What are the different types of Addressing Modes?
There are 12 different types of Addressing Modes. They are:i.
Immediate:-The Immediate data is a part of instruction, and appears in the form of successive
bytes.
ii.
Direct:-A 16-bit memory address(offset) is directly specified in the instruction as a part of it.
iii. Register:-Data is stored in a register and it is referred using the particular register (except IP).
iv.
Register Indirect:-The address of the memory location which contains data or operand is
determined in an indirect way.
v.
Indexed:-offset of the operand is stored in one of the index registers.
vi.
Register Relative:-The data is available at an eefective address formed by adding an 8-bit or 16bit displacement with the content of any one of the registers BX,BP,SI and DI in the default
(either DS or ES) segment.
vii.
Based Indexed:-The effective address of the data is formed,in this addressing mode,by adding
content of a base register to the content of an index register.
viii. Relative Based Indexed:- The effective address is formed by adding an 8 or 16-bit displacement
with the sum of contents of any one of the base registers and any one of the index registers,in the
default segment.
ix. Intrasegment Direct Mode:-In this mode,the address to which the control is to be transferred lies
in the segment in which the control transfer instruction lies and appears directly in the instruction
as an immediate displacement value.
x. Intrasegment Indirect Mode:-In this mode,the displacement to which the control is to be
transferred,is in the same segment in whgich the control transfer instruction lies,but it is passed
to the instruction indirectly.
xi. Intersegment Direct:-In this mode,the address to which the control is to be transferred is in a
different segment.
xii. Intersegment Indirect:-In this mode, the address to which the control is to be transferred lies in a
different segment and it is passed to the instruction indirectly sequentially.

22. What are the General Data Registers & their uses?
The Registers AX, BX, CX, DX are the general Purpose 16-bit registers. AX register as 16-bit
accumulator.BX register is used as an offset Storage.CX register is used as default or implied counter.
DX register is used as an implicit operand or destination in case of a few instructions.

23. What are Segment Registers & their uses?


A:-There are 4 Segment Registers Code Segment(CS),Data Segment(DS),Extra Segment(ES) & Stack
Segment(SS) registers.CS is used for addressing memory location in code.DS is used to points the
data.ES refers to a segment which is essentially in another data segment.SS is used for addressing stack
segment of memory.
24. What are Flag registers?
Divided into 2 parts:-Condition code or status flags and machine control flags.
S-Sign Flag:-Is to set when the result of any computation is negative.
Z-Zero Flag:-Is to set if the result of the computation or comparison performed by the previous
instruction is zero.
C-Carry Flag:-Is set when there is carry out of MSB in case of addition or a borrow in case of
subtraction.
T-Trap Flag:-Is set, the processor enters the single step execution mode.
I-Interrupt Flag:-Is set, the maskable interrupts are recognized by the CPU.
D-Direction Flag:-Is set for auto incrementing or auto decrementing mode in string manipulation
instructions.
AC-Auxiliary Carry Flag:-Is set if there is a carry from the lowest nibble during addition or borrow for
the lowest nibble.
O-Overflow Flag:-Is set if the result of a signed operation is large enough to be accommodated in a
destination register.

25. What does the 8086 Architecture contain?


A:-The complete architecture of 8086 can be divided into 2 types :-Bus Interface Unit(BIU) &
Execution Unit.
The BIU contains the circuit for physical address calculations and a precoding instruction byte queue &
it makes the bus signals available for external interfacing of the devices.
The EU contains the register set of 8086 except segment registers and IP. It has a 16-bit ALU, able to
perform arithmetic and Logic operations.
26. What are Data Copy/Transfer Instructions?
A:- MOV,PUSH,POP,XCHG,IN,OUT,XLAT,LEA,LDS/LES,LAHF,SAHF,PUSHF,POPF
27.What are Machine Control Instructions?
A:- NOP,HLT,WAIT,LOCK
28. What are Flag Manipulation Instructions?
A:- CLD,STD,CLI,STI

29. What are String Instructions?


A:- REP MOVSB/MOVSW, CMPS, SCAS, LODS,STOS

30. What is an Interrupt?


Def:- :-Interrupt is an external signal that causes a microprocessor to jump to a specific subroutine. An
interrupt operation suspends execution of a program so that the system can take special action. The
interrupt routine executes and normally returns control to the interrupted procedure, which then resumes
execution.
BIO handles INT 00H-1FH, whereas DOS handles INT 20H-3FH.
31. What is an Opcode?
A:-The part of the instruction that specifies the operation to be performed is called the Operation code or
Op code.
32. What is an Operand?
A:-The data on which the operation is to be performed is called as an Operand.
33. Explain the difference between a JMP and CALL instruction?
A:-A JMP instruction permanently changes the program counter.
A CALL instruction leaves information on the stack so that the original program execution sequence can
be resumed.
34.What is meant by Polling?
A:- Polling or device Polling is a process which identifies the device that has interrupted the
microprocessor.
35. What is an Instruction?
A:-An instruction is a binary pattern entered through an input device to command the microprocessor to
perform that specific function.
36. What is Microcontroller and Microcomputer?
A:- Microcontroller is a device that includes microprocessor: memory and I/O signal lines on a single
chip, fabricated using VLSI technology.
Microcomputer is a computer that is designed using microprocessor as its CPU. It includes
microprocessor, memory and I/O.
37. What is Assembler?
A:-The assembler translates the assembly language program text which is given as input to the
assembler to their binary equivalents known as object code.
The time required to translate the assembly code to object code is called access time. The assembler
checks for syntax errors & displays them before giving the object code.
38. Explain Dup?
A:-The DUP directive can be used to initialize several location & to assign values to these locations.

39. Define Pipelining?


A:-In 8086,to speedup the execution program, the instructions fetching and execution of instructions are
overlapped each other. This is known as Pipelining.
40. What is the use of HLDA?
A:-HLDA is the acknowledgment signal for HOLD. It indicates whether the HOLD signal is received or
not.
HOLD and HLDA are used as the control signals for DMA operations.
41. Explain about "LEA"?
A:-LEA (Load Effective Address) is used for initializing a register with an offset address.
A common use for LEA is to intialize an offset in BX, DI or SI for indexing an address in memory.
An equivalent operation to LEA is MOV with the OFFSET operator, which generates slightly shorter
machine code.
42. Difference between "Shift" and "Rotate"?
A:-Shift and Rotate commands are used to convert a number to another form where some bits are shifted
or rotated.
A rotate instruction is a closed loop instruction. That is, the data moved out at one end is put back in at
the other end.
The shift instruction loses the data that is moved out of the last bit locations.
Basic difference between shift and rotate is shift command makes "fall of bits at the end of the register.
Where rotate command makes "wrap around" at the end of the register.
43. Explain about .MODEL SMALL?
A:- .MODEL directive:-This simplified segment directive creates default segments and the required
ASSUME and GROUP statements.
Its format is .MODEL memory-model.The following are the memory models
Tiny:-Code and data in one segment, for .COM programs.
Small:-Code in one segment (<=64K), data in one segment (<=64K). It generates 16-bit offset addresses.
Medium:-Any number of code segments, data in one segment (<=64K).
Compact:-Code in one segment (<=64K), any number of data segments. It generates 32-bit addresses,
which require more time for execution.
Large:-Code and data both in any number of segments, no array >64K.
Huge:-Code and data both in any number of segments, arrays may be >64K.
Flat:-Defines one area upto 4 gigabytes for both code and data.It is unsegmented.The program uses 32bit addressing and runs under Windows in protected mode.

44. Difference between JMP and JNC?


A:-JMP is Unconditional Branch.
JNC is Conditional Branch.

45. What is the main use of ready pin?


A:-READY is used by the microprocessor to check whether a peripheral is ready to accept or transfer
data.
A peripheral may be a LCD display or analog to digital converter or any other.
These peripherals are connected to microprocessor using the READY pin.
If READY is high then the periphery is ready for data transfer. If not the microprocessor waits until
READY goes high.
46. Explain about Direction Flag?
A:-This is used by string manipulation instructions.
If this flag bit is 0, the string is processed beginning from the lowest to the highest
address,i.e.,.Autoincrement mode. Otherwise, the string is processed from the highest towards the lowest
address, i.e.Autodecrementing mode.
47. What is assembly language?
The language in which the mnemonics (short -hand form of instructions) are used to write a program is
called assembly language. The manufacturers of microprocessor give the mnemonics.
48. What are machine language and assembly language programs?
The software developed using 1's and 0's are called machine language programs. The software
developed using mnemonics are called assembly language programs.
49. What is the drawback in machine language and assembly language programs?
The machine language and assembly language programs are machine dependent. The programs
developed using these languages for a particular machine cannot be directly run on another machine.
50. Define bit, byte and word.
A digit of the binary number or code is called bit. Also, the bit is the fundamental storage unit of
computer memory. The 8-bit (8-digit) binary number or code is called byte and 16-bit binary number or
code is called word. (Some microprocessor manufactures refer the basic data size operated by the
processor as word).
51. What is a bus?
Bus is a group of conducting lines that carries data, address and control signals.
52. Why data bus is bi-directional?
The microprocessor has to fetch (read) the data from memory or input device for processing and after
processing, it has to store (write) the data to memory or output device. Hence the data bus is bidirectional.

53. Why address bus is unidirectional?


The address is an identification number used by the microprocessor to identify or access a memory
location or I / O device. It is an output signal from the processor. Hence the address bus is
unidirectional.
54. What are the modes in which 8086 can operate?
The 8086 can operate in two modes and they are minimum (or uniprocessor) mode and maximum ( or
multiprocessor) mode.
55. What is the data and address size in 8086?
The 8086 can operate on either 8-bit or 16-bit data. The 8086 uses 20 bit address to access memory and
16-bit address to access I/O devices.
56. Explain the function of M/IO in 8086.
The signal M/IO is used to differentiate memory address and I/O address When the processor is
accessing memory locations M/IO is asserted high and when it is accessing I/O mapped devices it is
asserted low.
57. How clock signal is generated in 8086? What is the maximum internal clock frequency of
8086?
The 8086 does not have on-chip clock generation circuit. Hence the clock generator chip, 8284 is
connected to the CLK pin of8086. The clock signal supplied by 8284 is divided by three for internal use.
The maximum internal clock frequency of8086 is 5MHz.
58. What is pipelined architecture?
In pipelined architecture the processor will have number of functional units and the execution times of
functional units are overlapped. Each functional unit works independently most of the time.
59. Define machine cycle.
Machine cycle is defined as the time required to complete one operation of accessing memory, I/O, or
acknowledging an external request. This cycle may consist of three to six T-states.
60. Define T-State.
T-State is defined as one subdivision of the operation performed in one clock period. These subdivisions
are internal states synchronized with the system clock, and each T-State is precisely equal to one clock
period.
61. List the components of microprocessor (single board microcomputer) based system
The microprocessor based system consist of microprocessor as CPU, semiconductor memories like
EPROM and RAM, input device, output device and interfacing devices.

62. Why interfacing is needed for I/O devices?


Generally I/O devices are slow devices. Therefore the speed of I/O devices does not match with the
speed of microprocessor. And so an interface is provided between system bus and I/O devices.
63. What does memory-mapping mean?
The memory mapping is the process of interfacing memories to microprocessor and allocating addresses
to each memory locations.
64. What is DMA?
The direct data transfer between I/O device and memory is called DMA.
65. What is the need for Port?
The I/O devices are generally slow devices and their timing characteristics do not match with processor
timings. Hence the I/O devices are connected to system bus through the ports.
66. What is a port?
The port is a buffered I/O, which is used to hold the data transmitted from the microprocessor to I/O
device or vice-versa.
67. Write a short note on INTEL 8255?
The INTEL 8255 is a I/O port device consisting of 3 numbers of 8 -bit parallel I/O ports. The ports can
be programmed to function either as a input port or as a output port in different operating modes. It
requires 4 internal addresses and has one logic LOW chip select pin.
68. What is the drawback in memory mapped I/O?
When I/O devices are memory mapped, some of the addresses are allotted to I/O devices and so the full
address space cannot be used for addressing memory (i.e., physical memory address space will be
reduced). Hence memory mapping is useful only for small systems, where the memory requirement is
less.
69. How DMA is initiated?
When the I/O device needs a DMA transfer, it will send a DMA request signal to DMA controller. The
DMA controller in turn sends a HOLD request to the processor. When the processor receives a HOLD
request, it will drive its tri-stated pins to high impedance state at the end of current instruction execution
and send an acknowledge signal to DMA controller. Now the DMA controller will perform DMA
transfer.
70. What is processor cycle (Machine cycle)?
The processor cycle or machine cycle is the basic operation performed by the processor. To execute an
instruction, the processor will run one or more machine cycles in a particular order.

71. What is Instruction cycle?


The sequence of operations that a processor has to carry out while executing the instruction is called
Instruction cycle. Each instruction cycle of a processor consists of a number of machine cycles.
72. What is fetch and execute cycle?
In general, the instruction cycle of an instruction can be divided into fetch and execute cycles. The fetch
cycle is executed to fetch the opcode from memory. The execute cycle is executed to decode the
instruction and to perform the work instructed by the instruction.
73. What is the need for timing diagram?
The timing diagram provides information regarding the status of various signals, when a machine cycle
is executed. The knowledge of timing diagram is essential for system designer to select matched
peripheral devices like memories, latches, ports, etc., to form a microprocessor system.

74. What is opcode fetch cycle?


The opcode fetch cycle is a machine cycle executed to fetch the opcode of an instruction stored in
memory. Every instruction starts with opcode fetch machine cycle.
75. Why status signals are provided in microprocessor?
The status signals can be used by the system designer to track the internal operations of the processor.
Also, it can be used for memory expansion (by providing separate memory banks for program & data
and selecting the bank using status signals).
76. How the 8086 processor differentiates a memory access (read/write) and I/O access
(read/write)?
The memory access and 1/0 access is differentiated using IO/M signal.
The 8085 processor asserts IO/M low for memory read/write operation and IO/M is asserted high for 1/0
read/write operation.

77. What is interrupt acknowledge cycle?


The interrupt acknowledge cycle is a machine cycle executed by 8086 processor to get the address of the
interrupt service routine in-order to service the interrupt device.
78. How the interrupts are affected by system reset?
Whenever the processor or system is reset, all the interrupts except TRAP are disabled. In order to
enable the interrupts, El instruction has to be executed after a reset.

79. What is Software interrupts?


The Software interrupts are program instructions. These instructions are inserted at desired locations in a
program. While running a program, if software interrupt instruction is encountered then the processor
executes an interrupt service routine.
80. What is Hardware interrupt?
If an interrupt is initiated in a processor by an appropriate signal at the interrupt pin, then the interrupt is
called Hardware interrupt.

81. Where is the READY signal used?


READY is an input signal to the processor, used by the memory or I/O devices to get extra time for data
transfer or to introduce wait states in the bus cycles.
82. What is HOLD and HLDA and how it is used?
Hold and hold acknowledge signals are used for the Direct Memory Access (DMA) type of data
transfer. The DMA controller places a high on HOLD pin in order to take control of the system bus. The
HOLD request is acknowledged by the 8085 by driving all its tristated pins to high impedance state and
asserting HLDA signal high.
83. What are the different types of Polling?
The polling can be classified into software and hardware polling. In software polling the entire polling
process is govern by a prograrn.1n hardware polling, the hardware takes care of checking the status of
interrupting devices and allowing one by one to the processor.
84. What is the need for interrupt controller?
The interrupt controller is employed to expand the interrupt inputs. It can handle the interrupt request
from various devices and allow one by one to the processor.
85. List some of the features of INTEL 8259 (Programmable Interrupt Controller)
i.
ii.
iii.
iv.

It manage eight interrupt request


The interrupt vector addresses are programmable.
The priorities of interrupts are programmable.
The interrupt can be masked or unmasked individually.

86. What is a programmable peripheral device?


If the functions performed by a peripheral device can be altered or changed by a program instruction
then the peripheral device is called programmable device. Usually the programmable devices will have
control registers. The device can be programmed by sending control word in the prescribed format to the
control register.
87. What is synchronous data transfer scheme?
For synchronous data transfer scheme, the processor does not check the readiness of the device after a
command has been issued for read/write operation. In this scheme the processor will request the device
to get ready and then read/W1.ite to the device immediately after the request. In some synchronous
schemes a small delay is allowed after the request.

88. What is asynchronous data transfer scheme?


In asynchronous data transfer scheme, first the processor sends a request to the device for read/write
operation. Then the processor keeps on polling the status of the device. Once the device is ready, the
processor executes a data transfer instruction to complete the process.
89. What are the internal devices of 8255?
The internal devices of 8255 are port-A, port-B and port-C. The ports can be programmed for either
input or output function in different operating modes.
90. What is baud rate?
The baud rate is the rate at which the serial data are transmitted. Baud rate is defined as l /(The time for
a bit cell). In some systems one bit cell has one data bit, then the baud rate and bits/sec are same.
91. What is USART?
The device which can be programmed to perform Synchronous or Asynchronous serial communication
is called USART (Universal Synchronous Asynchronous Receiver Transmitter). The INTEL 8251A is
an example of USART.
92. What are the functions performed by INTEL 8251A?
The INTEL 825lA is used for converting parallel data to serial or vice versa. The data transmission or
reception can be either asynchronously or synchronously. The 8251A can be used to interface MODEM
and establish serial communication through MODEM over telephone lines.
93. Give some examples of input devices to microprocessor-based system.
The input devices used in the microprocessor-based system are Keyboards, DIP switches, ADC, Floppy
disc, etc.

94. What are the tasks involved in keyboard interface?


The task involved in keyboard interfacing are sensing a key actuation, Debouncing the key and
Generating key codes (Decoding the key). These tasks are performed software if the keyboard is
interfaced through ports and they are performed by hardware if the keyboard is interfaced through 8279.
95. How a keyboard matrix is formed in keyboard interface using 8279?
The return lines, RLo to RL7 of 8279 are used to form the columns of keyboard matrix. In decoded scan
the scan lines SLo to SL3 of 8279 are used to form the rows of keyboard matrix. In encoded scan mode,
the output lines of external decoder are used as rows of keyboard matrix.
96. What is scanning in keyboard and what is scan time?
The process of sending a zero to each row of a keyboard matrix and reading the columns for key
actuation is called scanning. The scan time is the time taken by the processor to scan all the rows one by
one starting from first row and coming back to the first row again.
97. What are the internal devices of a typical DAC?
The internal devices of a DAC are R/2R resistive network, an internal latch and current to voltage
converting amplifier.
98. What is settling or conversion time in DAC?
The time taken by the DAC to convert a given digital data to corresponding analog signal is called
conversion time.
99. What are the different types of ADC?
The different types of ADC are successive approximation ADC, counter type ADC flash type ADC,
integrator converters and voltage- to-frequency converters.
100. How the microprocessor is synchronized with peripherals?
The timing and control unit synchronizes all the microprocessor operations with clock and generates
control signals necessary for communication between the microprocessor and peripherals.

You might also like