You are on page 1of 5

Microprocessor and Microcontrollers 17CS44 IV CSE/ISE

KNS INSTITUTE OF TECHNOLOGY


DEPARTMENT OF CSE/ISE
Question Bank
Sub Name: Microprocessor and Microcontroller Sub Code: 17CS44
Module 1
1. Explain brief history of the x86 microprocessor.
2. Write a short notes on Pipelining / instruction Queue.
3. Draw the bits of x86 flag register and explain the purpose of each flag bit.
4. Draw and explain the internal block diagram of the 8086/88 CPU.
5. Explain assembly programming with example program.(model definition , data, code …)
6. Explain different segments available in x86.
7. Explain the memory segmentation/Program segments. What are its advantages. What is logical
address and physical address.
8. Show the status of C, Z, A, C and P flags and content of BL after the execution of
following instructions.
MOV BL, 4FH
ADD BL, EBH
9. If CS=34E6H and IP=434AH, show 1. Logical address 2. Physical address 3. Lower range and upper
range of segment.
10. Assume that DS is 5000 and offset is 1950, calculate the physical address.
11. Explain the memory map of IBM PC.
12. What is stack? How it is accessed? ( Explain PUSH and POP)
13. What is range of physical address if CS=FF59
14. Explain the addressing modes of 8086
15. Explain the segment override prefix with example.
16. Find the physical address of the memory location and its contents after the execution of the following
, assuming that
DS=1521H MOV AL,99H
MOV [3518] , AL
17. Explain the following assembling directive.
DB , dw, DT, DQ,ORG, EQU,MACRO and ENDM , PUBLIc and EXTRN, BYTE PTR, PROc and
ENDP, OFFSET, WORD PTR,

18. Explain data types and definition WITH EXAMPLES ( ORG, DB, DUP, EQY, DW, DD, DQ, DT) in X86.
19. IDENTIFY THE ADDRESSING MODES AND CALCULATE THE PHYSICAL ADDRESS OF THE
MEMORY LOCATION BEING ACCESSED BY THE INSTRUCTION. Assume DS=2300h, SS=3597h,
SI=1393H, BX=2345H, BP=ABC2H, SP=2ADEH
MOV CX, [BX+23H], SUB DX, [BP], ADD [2323H], BL ADC [BP][SI], DL, MOV AX, [BX+DI+345H], SUB
[SI], BX
20. Explain the Program control transfer instructions .
21. What is a PROCEDURE? How procedure is invoked. Explain CALL and RET instructions with examples.
22. Write the difference between MACRO and a PROCEDURE.
Identify memory addressing mode in the following instructions and calculate effective offset
address 1. MOV AX, 1000H MOV CX, [1000H] 3. MOV AL, [SI+05H]
4. ADD AX, BX
23. Give the state of all the status flags bits after the addition of 30a2h with f01ch.

Prepared By :Prof. SUNILMANOLI/SHARIEFF, Dept of ISE/CSE, KNSIT, Bangalore Page 1


Microprocessor and Microcontrollers 17CS44 IV CSE/ISE
Module 2
24. Explain ADD, ADC, INC, SUB, SBB, DEC and CMP instructions with examples.
25. Explain MUL and DIV instructions with examples.
26. Explain the Logical instructions ( AND, OR, XOR, NOT, TEST) with examples.
27. What is the difference between TEST and AND instructions.
28. Explain BCD arithmetic instructions (DAA and DAS) with examples
29. Explain shift instructions with examples.
30. Explain rotate instruction with examples
31. Write a program to add 5 bytes 10,23,34,56,67 and store the result in SUM (CO2)
32. Write a program to add 5 words and store the result in SUM.
33. Write an ALP to find no of one present in given 16 bit data. (CO2)
34. Explain ASCII arithmetic instructions with examples ( AAA, AAS, AAD and AAM).
35. After executing the following instruction show the content of AL , Carry flag
MOV AL, FEH
MOV CL , 4
SHR AL, CL..

36. Explain the Interrupt Vector table of 8086 microprocessor.


37. Find the physical and logical address in the interrupt vector table associated with INT 12h and INT 8h
38. Explain the processing steps of interrupts( steps taken by the processor when an interrupt occurs).
39. Explain the 8086 dedicated interrupts ( Functions associated with INT 00 to INT 04).
40. Explain the different functions available in INT 21h software interrupt.
41. Explain different functions available BIOS INT 10h.
42. Explain the attribute byte in monochrome monitors with a diagram.
43. Explain the attribute byte in CGA text mode with a diagram.
44. Write a assembly to display a string “ First Internal Microprocessor and Microcontroller”
45. Write a code to display the character A on the screen.
46. Write a program to read string from keyboard. And display it on screen.

49.Write the instruction for the following.

a. AND the data stored in memory location addressed by SI with DX store the result in DX.
b. Set the right most 5 bits of DI without changing remaining bits
c. Where product is stored in MUL BX
d. Where remainder is stored in DIV CL
e. Select an instruction that adds AX, BX an also adds the content of carry flag
47. Write a short sequence of instructions that divides the number in BL by number in CL and then
multiplies the quotient by 2 store the result in DX
48. MOV AL, 0CH
AAM
MOV BL,AH
MOV BH, AL .what is the content of BX ?

51.Describe the operation of each of the following instruction in brief.

PUSHF MOVS LAHF XCHG

52.Write 8086 assembly instruction which will perform the


following operations:
Multiply AL times BL.

Load the number F3H into AL register.

Copy BP register contents to SP register.

Divide the AL register contents by 2 using a shift instruction.

Prepared By :Prof. SUNIL MANOLI/SHARIEFF, KNSIT, BANGALORE, Bangalore Page 2


Microprocessor and Microcontrollers 17CS44 IV CSE/ISE

Multiply the AL register contents by 4 using shift instruction

52.Calculate physical address of memory to access opcode and stack IP = C846H, CS = SS = C800H, SP =
8480H, FFFFH
53.Write an ALP using 8086 instructions to search a number placed in location NUM,in
an array of ten numbers placed at location ARRAY.

54.Write an ALP to find factorial of a number using recursion.

55.Write an ALP using 8086 instructions to generate and add the first 10 even numbers
and save the numbers and result in memory location Num and Sum.

56.Write an ALP using 8086 instructions to count the numbers of zeros in a given 8 bit
number and store the result in memory location 'Res'.

57.Write an assembly level program to cheek a given string is palindrome or not

Module 3
49. Explain the concept of signed numbers in computers.
50. Explain signed byte operand and write the range of positive and negative numbers.
51. Explain signed word operand and write the range of positive and negative numbers.
52. Show how the computer would represent byte operand -5.
53. Show how the computer would represent byte operand -36h.
54. Show how the computer would represent byte operand – 126.
55. Explain , when the overflow flag is set in 8-bit operations,
56. Show the status of Overflow flag(OF) after the execution of following instructions.
ALL NUMBERS ARE SIGNED NUMBERS
I) MOV DL, -126 II) MOV AL, -8 III) MOV DH, +8
MOV CH, -6 MOV CL,-6 MOV BH, +29
ADD DL, CH ADD CL, AL MOV BH, DH
57. Explain , when the overflow flag is set in 8-bit operations,
58. Explain the sign extension of 8 bit and 16 bit operands ( CBW and CWD).
59. Explain the signed number division (IDIV) and multiplication( IMUL) instructions with examples.
60. Explain the string instructions with examples( MOVS, LODS, STOS, CMPS, SCAS)
61. Explain the instructions to process table( XLAT)/ Bring out the importance of XLAT instruction using
a suitable program.
62. EXPLAN THE USE OF REP, REPE/REPZ AND REPNE/REPNZ WITH EXAMPLES.
63. Write a program that uses STOS to store byte ABH in 200 memory locations. Use LODS to test the
contents of each location to see if ABH is there. If the test fails, the system should display message
“ bad memory”
64. Assuming that there is a spelling of Europe” in an electronic dictionary and user types in “ Euorope”, r
Write a program that compares these two and diaplays the following message depending on
the result: i) Tf they are equal, “display “ the spelling is correct”
ii) If they are not equal, display “ wrong spelling”
65. Write a program using string instructions that scans the name “ “ Mr. Gones” and replaces the “G”
with the letter “J”
66. Write a program that scans the initials “IbM” and replaces the lower case “b” with uppercase”B”
67. Find the Address range of the following memory design. ( Refer text book 1: question 17 in section
10.2)
68. Using nand gates and inverters, design decoding circuitry for the address range C000H to C0fffh.
69. Find the address range for Y0, Y3 AND Y6 OF THE 74138 FOR THE FOLLOWING DESIGN ( Refer text
book 1: question 19 in section 10.2)
70. Using 74138, design a MEMORY DECODING CIRCUITRY IN WHICH THE MEMORY BLOCK CONTROLLED
BY Y0 IS IN THE RANGE 00000H to 03FFFh . Indicate the size of memory block controlled by each
block. Also find the address range for Y3, Y6 and Y7.

Prepared By :Prof. SUNIL MANOLI/SHARIEFF, KNSIT, BANGALORE, Bangalore Page 3


Microprocessor and Microcontrollers 17CS44 IV CSE/ISE
71. Using 74138, design a MEMORY DECODING CIRCUITRY IN WHICH THE MEMORY BLOCK CONTROLLED
BY Y0 IS IN THE RANGE 80000H to 807FFh . Indicate the size of memory block controlled by each
block. Also find the address range for y1. Y4, Y5 and Y7.
72. Assume that we have 4 bytes of hexadecimal data: 25h, 62h, 45h, 58h
a. Find the checksum byte.
b. Perform the checksum operation to ensure data integrity.
c. If the second byte 62h had been changed to 22h, show how checksum detects the error.
73. Assuming that last byte of the following data is the checksum byte, show whether the data has
been corrupted or not for each of case:
i)28H, C4H, BFH, 9EH, 87H, 65H,83H,50H,A7H and
51H. ii)29H, 1CH,16H38H AND 6DH
III) 29H, 1CH, 16H, 30H AND 6DH
74. Find the checksum byte for the following data: 34H, 54H, 7FH, 11H E6H, 99H.
75. Explain 16 bit memory interfacing with necessary diagrams.
76. Explain the accessing of data from even and odd bank with the help of an example.
77. Calculate the memory cycle time of a 20Mhz 80386 sytem with a) 0WS b) 1WS and c) 2WS
78. Calculate the memory bus band width for the following microprocessors the bus speed is 20Mhz.
a) 286 with 0WS and 1WS ( 16 bit data bus)
b) 386 with 0WS and 1WS ( 32-bit data bus)
79. Calculate the memory bus band width for the following systems
i. 80286 of 10MHZ and 0WS
ii. 80386 of 16MHZ and 2 WS
80. Explain 8086 Input /Output (IN and OUT) instructions with examples.
81. In a given 8088 based system, port address 22h is an input port for monitoring the temperature.
Write assembly language instructions to monitor that port continuously for the temperature of
100 degrees. If it reaches 100, then register BH should contain ‘Y’.
82. Show the design of an outpur port with an IO address of 31Fh using the 74373.
83. Draw a logical design for OUT 16H,AL using AND and inverter gates in addition to 74373.
84. Draw a logical design for OUT 16H,AL using NAND and inverter gates in addition to 74373.
85. Draw a logical design for IN AL, 81H using AND and inverter gates. in addition to 74244.
86. Draw a logical design for IN AL, 81H using NAND and inverter gates in addition to 74244.
87. Explain 8255 and its Control word format with diagrams.
88. Find the control word if PA=out, PB=in, PC0-PC3=in and PC4-PC7=out. Program the 8255 to get data
from port A and send it to port B. In addition, the data from PCL is sent out to the PCU. Use Port
address of 300H-303H for the 8255 chip.
89. Show the address decoding where port A of the 8255 has an I/O address of 300H, then write a program
to toggle all bits of PA continuously with a delay. Use INT 16H to exit if there is a key press.
90. Show the decoding circuitry for the 8255 if we want Port A to have address 68H. Use NAND and
inverter gates.
91. Which of the following port addresses cannot be assigned to PORT A of 8255 and why? 32h, 45h,
89h, Bah
92. If 91H is the control word , indicate which port is input and which is output.
93. Find the control word if PA=input, PB=input, and PC0-PC7=output.
94. Write a program to monitor PA for a temperature of 100. If it is equal, it should be saved in register
BL. Also, send AAh to port B and 55H to port C. Use the port address of your choice.
95. Explain how do you interface a stepper motor to 8086 to rotate the motor in clockwise direction by
360 degrees and anti clock wise direction by 180 degrees using 8255. Write neat diagram and ALP
96. Write an ALP to display 0 to 9 on a 7 segment LED display device

Module 4
97. Explain the difference between microprocessor and microcontrollers
98. Explain the difference between CISC and RISC architectures.
99. Explain the design rules on which RISC philosophy is implemented.
100. Explain the ARM design philosophy( Physical features that have driven ARM processor design.)

Prepared By :Prof. SUNIL MANOLI/SHARIEFF, KNSIT, BANGALORE, Bangalore Page 4


Microprocessor and Microcontrollers 17CS44 IV CSE/ISE
101. Explain with a neat diagram, the embedded system hardware based on ARM core.
102. Explain the following w.r.to ARM system design.
103. i) ARM bus technology ii) AMBA bus protocol iii) Memory iV) Memory Controller v) Interrupt
controller

104. Explain embedded system software( Initialization code, operating system and applications)
105. Explain with a neat diagram, ARM core data flow model.
106. Explain the seven basic operating modes of ARM core.
107. Explain with a neat diagram, register file of ARM.
108. Explain with a diagram, CPSR of ARM/Explain Conditional code flags of ARM
109. Explain with a neat diagram, register Bank of ARM.
110. Explain the pipeline execution of ARM instructions with an example.
111. Draw and explain the Interrupt vector table of ARM core and also explain the steps taken by the ARM
core when an exception/Interrupt occurs.
112. Explain the core extensions of ARM with diagrams.

Module 5
113. Explain MOV instruction with examples.
114. Explain barrel shifter in ARM instructions with an example.
115. Assume r5 = 5 , r7 = 8
Show the contents of registers r5 and r7 after the execution of MOV r7, r5, LSL #2

116. Assume r0 = 0x00000000, r1 = 0x80000004


Show the contents of registers r0 and r1 after the execution of MOVS r0, r1, LSL #1
117. Assume r0 = 0x00000000, r1 = 0x00000002, r2 = 0x00000001. Show the contents of registers r0 ,
r1and r2 after the execution of SUB r0, r1, r2
118. Assume r0 = 0x00000000 , r1 = 0x00000077 Show the contents of registers r0 and r1 after the
execution of RSB r0, r1, #0,
119. Assume r0 = 0x00000000 , r1 = 0x00000005, Show the contents of registers r0 and r1 after the
execution of ADD r0, r1, r1, LSL #1
120. Assume r0 = 0x00000000, r1 = 0x02040608, r2 = 0x10305070, Show the contents of registers r0 ,
r1and r2 after the execution of ORR r0, r1, r2.
121. Assume r0 = 0x00000000, r1 = 0x02040608, r2 = 0x10305070, Show the contents of registers r0 ,
r1and r2 after the execution of AND r0, r1, r2, LSR #2
122. Assume r0 = 0x00000000, r1 = 0x00000002, r2 = 0x00000002 Show the contents of registers r0 ,
r1and r2 after the execution of MUL r0, r1, r2
123. Assume r0 = 0x00000002, r1 = 0x00000004, r2 = 0x00000008 and r3=0x00000009 Show the
contents of registers r0 , r1, r2and r3 after the execution of UMULL r0, r1, r2, r3
124. Explain the arithmetic instructions in ARM with an examples.
125. Explain the barrel shifter in arithmetic instruction with an example.
126. Explain the logical instructions with examples.
127. Explain the comparison instruction with examples.
128. Explain the Multiply instructions with examples.
129. Explain the Branch instruction with an example.
130. Explain the single register load-store instruction with an example.
131. Explain the Multiple register load-store instruction with an example
132. Explain the stack operation instructions in ARM
133. Explain the SWAP instructions with examples.
134. Explain Software Interrupt instructionsof ARM.
135. Explain program status register instructions.
136. Explain the coprocessor instructions of ARM core.

Prepared By :Prof. SUNIL MANOLI/SHARIEFF, KNSIT, BANGALORE, Bangalore Page 5

You might also like