Sei sulla pagina 1di 7

MICROPROCESSORS

Q.1 What is 8085MPU? Explain its pin diagram and signals?

Q.2 Describe the steps involved and timing diagram of data flow when the instruction LDA 2505H is
executed?

Q.3 What is the purpose of using Latch? Describe how it provides interfacing by using any latch chip?

Q.4 a) The memory map of 16K bytes memory chip begins at location 3000H.Specify the address of
last location?

b) If the memory chip size is 256*1bits. How many chips are required to make up 2K bytes of
memory?

c) The memory address of last location of a 1K byte memory chip is given as FBFF H. Specify the
starting address?

Q.5 Explain the interfacing of seven segments LED as an output device by using peripheral mapping?

Q.6 For the following program:

Start: LDA FFF9 H

CMA

STA FFF8 H

MOV B, A

JUMP START

a) Specify the bytes of instruction for each instruction.

b) Identify the machine cycles of each instruction.

c) If the system frequency is 3MHz. Calculate the total time required executing the program for
1loop?

Q.7 Draw flowchart and write the instructions to read the data at input port 07H and at port 08H.
Display the input data from port 07 H at output port 00H and store the input data from port 08H in
register B.

OR

What is difference between memory mapped I/O and peripheral mapped I/O. Explain how
memory mapping is done with suitable example.

Q.8 Write a program to do the following:

a) Load the no.25H in register B and 39H in register C.

b) Subtract 25H from 39H.

c) Display the answer at port address F7 H.

Specify the answer you would expect and show the status of Sign, Zero, Carry and Parity flags.

Q9. Sixteen bytes of data are stored in memory locations at 3050H to 305FH. Write a program with
comments to transfer the entire block of data to new memory locations starting at 4070H.

Q10. Six bytes of data are stored in memory locations starting at 2000H. Add all the data bytes. Use
register B to save any carries generated, while adding the data bytes. Display the entire sum at two
output ports or store the sum at the two consecutive locations 3070H and 3071H.

Data(H) : A2,FA,DF,E5,98,8B.

Q11. Write the instruction to:

Load 59H in memory location 2040H and increment the contents of memory location and
display the content of memory at port 1.
Load 90H in memory location 2041H and decrement the contents of memory location and
display the content of memory at port 2.
Repeat the above process

Q12. A set of reading is stored in memory locations starting at 2050H. The end of the data string is
indicated by data byte 00H. Add the set of readings. The answer may be larger than FFH. Display the
entire sum at port 1 and port2 or store the answer in the memory locations 4070H and 4071H.

Data (H): 32, 52, F2, A5, 00.

Q13. Write a program to count continuously from FFH to 00H in a system with 0.5microseconds clock
period. Use register C to setup a 1ms delay between each count and display the no. at one of the
output port. (Show delay calculations)

Q14. Write a program to count from 0 to 9 with a 1s delay between each count. At the count of 9, the
counter should reset itself to 0 and repeat the sequence continuously. Use the register pair HL to
setup the delay and display each count at one of the output port. Assume the clock frequency of the
microcomputer is 1MHz. (Show delay calculations)

Q15. Write a program to generate a continuous square wave with the period of 500microseconds.
Assume the system clock period is 325ns and use bit D0 to output the square wave. (Show delay
calculations)

Q16. The following block of data is stored in memory locations from XX55H to XX5AH. Write a
program to transfer the data to the locations XX80 to XX85H in the reverse order. (e.g. The data byte
22H should be stored at XX85H and 37 at XX80H).

Data(H) : 22, A5, B2, 99, 7F, 37.

Q17. A set of eight data bytes is stored in memory location starting at XX50H. Write a program to
check each data bytes for bits D7 and D0. If D7 and D0 is 1, reject the data byte otherwise store the
data bytes at memory locations starting at XX60H.

Data(H): 80, 52, E8, 78, F2, 67, 35, 62.

Q18. Write a program to add the following data bytes stored in memory locations starting at XX60H
and display the sum at the output port if the sum does not generate a carry. If a result generates a
carry, stop the addition and display 01H at the output port.

Data (H) : 05, 10, 14, 37,25.

Q19. Write a program to generate a time delay by loading 8000H in the register pair BC and calculate
the loop delay TL if the system clock frequency is 3.072 MHz. (Ignore three T-states difference of the
last cycle).

Q20. Write a program to turn a light ON and OFF for every 5 seconds. Use the data bit D7 to operate
the light. (Show delay calculations)

Q21. Give a brief introduction of 8086 microprocessor along with its functional block diagram.

Q22. Explain in brief the pin diagram of 8086 microprocessor.

Q23.Calculate the delay in the following loop, assuming the system clock period is

0.33microseconds:

LXI B, 12FF H 10

DELAY: DCX B 6

XTHL 16

NOP 4

MOV A, C 4

ORA B 4

JNZ DELAY 10/7


Q24. Calculate the 16bit count to be loaded in register DE to obtain the loop delay of 2 seconds in
loop2.(Use the clock period of 0.5microseconds)

MVI B, 14H 7

Loop2: LXI D, 16bit 10

Loop1: DCX D 6

MOV A, D 4

ORA E 4

JNZ Loop1 10/7

DCR B 4

JNZ Loop2 10/7

Q25. Write a program to turn on and turn off the light for every 2 seconds. Use data bit D4 to operate
the light. Also show the delay calaculation and assume system frequency 5Mhz.

Q26. Write a program to generate the square wave with a 200s on period and 400s off period. Also
show the delay calaculation and assume system frequency 2Mhz.

Q27. Write a program to:

a) Clear the accumulator.


b) Add 45H
c) Subtract 90H
d) Add 64H
e) Display the results after subtracting and after adding 64H.

Specify the answers you would expect at the output ports.

Q28.Write a program to load the bit pattern 91H in register B and 87H in register C. Mask all the bits
except D0 from the registers B and C. If D0 is at logic1 in both registers, turn on the light connected
to the D0 position of output port 01H; otherwise, turn off the light.

Q29. A set of eight data bytes is stored in memory location starting at XX50 H. Write a program to
check each data byte for the bits D7 and D0. If D7 or D0 is 0, reject the data byte; otherwise, store the
data bytes at memory locations starting at XX60hH.

Data(H) : 80,52,E8,78,67,35,62, F5

Q30. A set of eight data bytes is stored in memory location starting at XX50 H. Write a program to
check whether a byte 40H exist in the set. If it does, stop checking and display its memory location;
otherwise output FF H.

Data (H) : 48,32,F2,38,37,40,82,8A

Q31. Six bytes of data are stored in memory locations starting at XX60H. Write a program to add all
data bytes. Use register c to save any carries generated, while adding the data bytes. Display the
entire sum at two output ports.

Data (H): A2,54,A2,86,5B,25

Q32. Draw the flowchart to load the hexadecimal numbers 90 H and A5 H in registers D and E
respectively and add the numbers. If the sum is greater than FFH, display 01H at port 0; otherwise,
display the sum.

Q33. Write a program to provide the given on/off time to three traffic lights (Green, Yellow and Red)
and two pedstrainsigns(WALK and DONT WALK). The signal lights and signs are turned on/off by the
data bits of an output port as shown below:

Lights Data Bits On Time

1. Green D7 20 seconds

2. Yellow D6 10 seconds

3. Red D4 20 seconds

4. WALK D2 20 seconds

5. DONT D0 30 seconds
WALK
The traffic and pedestrain flow are in the same direction; the pedstrain should cross the road when
the Green light is on.

Q34. Write a program to control a railway crossing signal that has two alternately flashing red lights,
with a 1 second delay on time for each light.

Q35. Write a 20ms time delay subroutine using register pair BC. Clear the Z flag without affecting any
other flags in the flag register and return to the main program.

Q36. Write a program to add the two hex numbers 7A and 46 and to store the sum at memory
location XX98H and the flag status at location XX97H.

Q37. An 8bit binary no. is stored in memory location XX50H. Write a program to transfer the byte to
the accumulator and Separate the two nibbles. Also call the subroutine to convert each nibble into
ASCII hex code and Store the codes in memory location XX60H and XX61H.

Q38.A BCD no. between 0 and 99 is stored in an R/W memory location called the input buffer
(INBUF). Write a main program and a conversion subroutine (BCDBIN) to convert the BCD no. into its
binary equivalent. Store the result in a memory location defined as the output buffer (OUTBUF).

Q39. A set of six unpacked BCD no. is stored in memory locations starting at XX30 H. Assume the
seven segment codes of the digits 0 to 9 for common cathode LED are stored in memory location
starting at XX70 H. Write a program to select an appropriate seven segment code for each digit. The
code should be stored in memory location in reverse order starting at XX90 H.

Q40.Calculate the delay in the following loop, assuming the system clock period is 0.5microseconds:

LXI B, 12FF H 10

DELAY: DCX B 6

XTHL 16

NOP 4

MOV A, C 4

ORA B 4

JNZ DELAY 10/7

Q42. A set of ten packed BCD no. is stored in memory location starting at XX40 H.

i) Write a program to add these numbers in BCD. If a carry is generated save it in register B and
adjust it for BCD. The final sum will be less than 9999BCD .

ii) Write a second subroutine to unpack the BCD sum stored in register A and B and Store them in the
memory location starting at XX60 H. (MSB at XX60 H and LSB at XX63 H)

Q43. With reference to Q17. Write a subroutine to convert the unpacked BCD digits stored at XX60
to XX63 H into ASCII code and store them at output buffer memory starting at XX80 H.

Q44. Write a program to subtract two packed BCD numbers (75- 36) stored in register B and C
respectively. The minuend is placed in register C and subtrahend is placed in register B. Display the
result at output port 0.

Q45. A binary number is stored in memory location XX50 H. Convert the no. into BCD and store each
BCD as two unpack BCD digits in the output buffer (XX70 H). to perform the task, write a main
program and two subroutines: one to supply powers of 10 and the other to perform the conversion.

Q46. What do you mean by cascade operation of 8237? Why is it required?

Q47. Explain the different addressing modes of operation of 8255 (PPI). Also explain the significance
of different bits of control word register format of 8253 (8254).

Q48. Draw & discuss the internal architecture of 8279 (PIT). Also explain the initialization sequence of
8259.

Q49. Explain DMA process with the help of internal architecture of 8237 (programmable DMA
controller).

Q50. Explain internal architecture of 8255.

Q51. Explain operation of programmable interrupt controller 8259 with the help of diagram of internal
architecture.

Q52. Draw & explain internal block diagram of 8255 &its different modes of operation.

Q53List the major components of the 8259A interrupt controller & explain their functions.

Q54. Give a brief introduction of 8086 microprocessor along with its functional block diagram.

Q55. Explain in brief the pin diagram of 8086 microprocessor.

Potrebbero piacerti anche