Microprocessors MCQ Quiz - Objective Question with Answer for Microprocessors - Download Free PDF
Last updated on Jun 9, 2025
Latest Microprocessors MCQ Objective Questions
Microprocessors Question 1:
Which of the following is not true in VHDL?
Answer (Detailed Solution Below)
Microprocessors Question 1 Detailed Solution
Explanation:
Correct Option Analysis:
The correct answer to the question "Which of the following is not true in VHDL?" is:
Option 4: std_logic data type can assume a maximum of 3 types of values.
This option is incorrect because the std_logic data type in VHDL can represent a total of 9 values, not just 3. These values are:
- 'U': Uninitialized.
- 'X': Forcing unknown.
- '0': Forcing 0.
- '1': Forcing 1.
- 'Z': High impedance.
- 'W': Weak unknown.
- 'L': Weak 0.
- 'H': Weak 1.
- '-': Don't care.
The std_logic data type is one of the most versatile and commonly used data types in VHDL. It allows for a wide range of values, which facilitates the modeling of various digital signals and their behaviors, including undefined or high-impedance states. This flexibility is especially useful for simulating real-world digital circuits, where signals can occasionally be in unknown or intermediate states.
Important Information:
Let’s analyze the other options to understand their validity:
Option 1: Signal assignment can be used inside a FUNCTION.
This statement is false because signal assignment cannot be used inside a FUNCTION in VHDL. Functions are intended to be purely combinational, meaning they do not allow the modification of signals or the use of signal assignments. Instead, functions operate on input parameters and return a value without altering any external state.
Option 2: In an ENTITY, all PORTS are SIGNALS by default.
This statement is true. In VHDL, ports declared in an ENTITY are considered signals by default. They are used to interface between different parts of a design and facilitate communication between components. Ports can have different modes such as in, out, inout, or buffer, depending on their intended use.
Option 3: (CLKEVENT and CLK = '1') can be used to describe the rising edge event of CLK signal.
This statement is true. The expression (CLKEVENT and CLK = '1') is commonly used in VHDL to detect the rising edge of a clock signal. Here’s how it works:
- The CLKEVENT attribute detects whether the signal CLK has changed in the current simulation cycle.
- The condition CLK = '1' checks whether the clock signal is now at a high level.
- Together, these conditions indicate a rising edge of the clock signal.
However, it is worth noting that modern VHDL coding practices typically use the predefined function rising_edge(CLK), which is more concise and explicitly checks for a rising edge.
Conclusion:
The correct answer is Option 4, as the std_logic data type can represent 9 values, not just 3. Understanding the various aspects of VHDL, including signal assignments, entity ports, and event detection, is crucial for designing robust and efficient digital systems. By leveraging the flexibility and capabilities of VHDL, designers can create accurate simulations and implementations of complex digital circuits.
Microprocessors Question 2:
_______ interrupt is a positive edge sensitive interrupt and can be triggered with a short pulse.
Answer (Detailed Solution Below)
Microprocessors Question 2 Detailed Solution
The correct answer is: 2) RST 7.5
Explanation:
In the 8085 microprocessor, the RST 7.5 interrupt has unique characteristics:
- Edge-Triggered:
- RST 7.5 is positive-edge sensitive, meaning it triggers when the signal transitions from LOW to HIGH.
- It can be activated by a short pulse (minimum 500 ns wide).
Other RST Interrupts:
RST 6.5 and RST 5.5: Level-sensitive (require the signal to remain HIGH until acknowledged).
RST 4.5: Not a standard interrupt in 8085.6
Microprocessors Question 3:
There are ______ register banks in the 8051 microcontroller.
Answer (Detailed Solution Below)
Microprocessors Question 3 Detailed Solution
The 8051 microcontroller has:
-
4 register banks
-
Each bank contains 8 general-purpose registers: R0 to R7
-
So, a total of 32 registers (4 banks × 8 registers)
Details:
-
The register banks are located in the lower 32 bytes (00H to 1FH) of the internal RAM.
-
The current active bank is selected using RS0 and RS1 bits in the Program Status Word (PSW) register.
RS1 | RS0 | Active Bank | Address Range |
---|---|---|---|
0 | 0 | Bank 0 | 00H – 07H |
0 | 1 | Bank 1 | 08H – 0FH |
1 | 0 | Bank 2 | 10H – 17H |
1 | 1 | Bank 3 | 18H – 1FH |
Microprocessors Question 4:
Analyse the given program for 8085 and answer the question that follows.
MVI B, 06h
MVI A, F2H
ADD B
What is the content of Accumulator Register after the execution of the given program?
Answer (Detailed Solution Below)
Microprocessors Question 4 Detailed Solution
Let's trace the execution of the 8085 program step by step to determine the final content of the Accumulator (Register A).
Initial State:
- Register B contains an unknown value.
- Register A contains an unknown value.
Instruction 1: MVI B, 06h
- MVI stands for "Move Immediate".
- This instruction loads the immediate 8-bit value 06h into Register B.
- After this instruction:
- Register B = 06h
Instruction 2: MVI A, F2H
- This instruction loads the immediate 8-bit value
F2h
into the Accumulator (Register A). - After this instruction:
- Register A = F2h
Instruction 3: ADD B
- ADD adds the content of the specified register (in this case, Register B) to the content of the Accumulator (Register A). The result is stored in the Accumulator.
- Before the addition:
- Register A = F2h
- Register B = 06h
Now, let's perform the hexadecimal addition:
F2 (Hexadecimal)
+ 06 (Hexadecimal)
-----
Starting from the rightmost digit:
- 2 + 6 = 8
Moving to the leftmost digit:
- F + 0 = F
Therefore, the result of the addition F2h + 06h is F8h.
After the execution of the ADD B instruction, the content of the Accumulator (Register A) will be F8h.
Microprocessors Question 5:
The address range of the bit addressable memory area in the 8051 microcontroller is ______.
Answer (Detailed Solution Below)
Microprocessors Question 5 Detailed Solution
The correct answer is: 3) 20-2Fh
Explanation:
In the 8051 microcontroller, the bit-addressable memory area is a 16-byte range from 20H to 2FH in the internal RAM (data memory). This area contains 128 addressable bits (16 bytes × 8 bits per byte = 128 bits). Each bit in this region can be directly accessed using bit addresses from 00H to 7FH.
The other options:
-
00-FFh - This is the entire internal RAM range, but only 20H-2FH is bit-addressable
-
00-7Fh - This is the lower half of internal RAM (including SFRs), but not all is bit-addressable
-
20-7Fh - This includes non-bit-addressable RAM beyond 2FH
Top Microprocessors MCQ Objective Questions
What is the size of internal data memory in an 8051 microcontroller?
Answer (Detailed Solution Below)
Microprocessors Question 6 Detailed Solution
Download Solution PDF- 8051 is an 8-bit microcontroller built with 40 pins DIP (dual inline package).
- 8051 has internal RAM (128 Bytes) and ROM (4K Bytes).
- Of the 128-byte internal RAM, only 16 bytes are bit-addressable. The rest must be accessed in byte format.
Notes:
The Block Diagram of an 8051 microcontroller is as shown:
In an 8051 microcontroller,
- Internal RAM (data memory) - 128 bytes
- Internal memory (code memory) - 4 kB (ROM)
- Timer/counter - 2
- No. of interrupt - 5
- I/O pins - 32
- Serial port - 1
The main purpose of Accumulator register of 8085 is
Answer (Detailed Solution Below)
Microprocessors Question 7 Detailed Solution
Download Solution PDFRegisters in 8085 are primarily used to store temporary data.
General Purpose Registers:
- There are six 8-bit registers B, C, D, E, H, L. Each register contains 8 flip-flops hence, each register can store a maximum of 8 bit (1 Byte) of data.
- For storing data greater than 8 bits, these registers are used in pairs. There are three register pairs: BC pair, D – E pair, HL pair
- Each register pair can store a maximum of 16 bits of data (2 Byte).
Accumulator:
- It is an 8-bit register that contains 8 flip-flops. It can store a maximum of 8 bits of data.
- The importance of the accumulator is that, in most of the 8-bit arithmetic and logical operations, the microprocessor will always take the first 8-bit number from the accumulator.
Temporary Registers:
- There are three 8-bit registers W, X, and Z.
- Each register can store a maximum of 8 bits of data.
- These registers cannot be used or accessed by the programmer.
- These registers can be used only by the microprocessor for executing its operation i.e., the microprocessor will use these registers for the temporary storage of data.
- For storing 16-bit data W – Z pair can be used by the microprocessor.
What is the content of accumulator of 8085 microprocessor after the execution of XRI F0 H instruction?
Answer (Detailed Solution Below)
Microprocessors Question 8 Detailed Solution
Download Solution PDF- XRI F0H is used to complement the upper four bits of the accumulator in 8085.
- XRI 0FH is used to complement the lower four bits of the accumulator in 8085.
- ANI F0H is used to clear the lower four bits of the accumulator in 8085.
- ANI 0FH is used to clear the upper four bits of the accumulator in 8085.
Which of the following are temporary registers in 8085?
Answer (Detailed Solution Below)
Microprocessors Question 9 Detailed Solution
Download Solution PDFRegisters in 8085:
Registers are a type of computer memory used to quickly accept, store, and transfer data and instructions that are being used immediately by the processor.
Types of registers:
1.) General purpose registers:
- The 8085 has six general-purpose registers to store 8-bit data; these are identified as- B, C, D, E, H, and L.
- These can be combined as register pairs – BC, DE, and HL, to perform some 16-bit operation.
- These registers are used to store or copy temporary data, by using instructions, during the execution of the program.
2.) Specific purpose registers:
a.) Accumulator:
- The accumulator is an 8-bit register (can store 8-bit data) that is the part of the arithmetic and logical unit (ALU).
- After performing arithmetical or logical operations, the result is stored in accumulator.
- Accumulator is also defined as register A.
b.) Flag registers:
- These registers change their values as per the result of arithmetic operation.
- The 5 flag registers are: Sign flag, Carry flag, Auxiliary flag, Parity flag, Zero flag.
3.) Temporary registers:
- W and Z are two 8-bit temporary registers of 8085 microprocessor, which is not accessible to the user.
- They are exclusively used for the internal operation by the microprocessor.
4.) Memory registers:
- There are two 16-bit registers used to hold memory addresses: Stack pointer and Program counter
How many dual-purpose ports are there in the 8051 microcontroller?
Answer (Detailed Solution Below)
Microprocessors Question 10 Detailed Solution
Download Solution PDFPorts in 8051:
- There are 4 ports in 8051 IC (Port 0, Port 1, Port 2 and Port 3); 32 pins function as I/O port lines and 24 of these lines are dual-purpose (P0, P1, P3).
- Each can operate as I/O, or as a control line or part of the address or data bus.
- Eight lines in each port can be used in interfacing to parallel devices like printers, DAC, etc., or each line the port can be used in interfacing to single bit devices like LED’s, switches, transistors, solenoid, motors, and loudspeakers.
Important:
In an 8051 microcontroller,
- Internal RAM (data memory) - 128 bytes
- Internal memory (code memory) - 4 kB (ROM)
- Timer/counter - 2
- No. of interrupt - 5
- I/O pins - 32
- Serial port - 1
8085 microprocessors has ________ individual flags during arithmetic and logic operations.
Answer (Detailed Solution Below)
Microprocessors Question 11 Detailed Solution
Download Solution PDFThere is an 8-bit flag register out of which only 5 bits are used
D7 |
D6 |
D5 |
D4 |
D3 |
D2 |
D1 |
D0 |
Sign Flag |
Zero Flag |
× |
Auxiliary Carry Flag |
× |
Parity Flag |
× |
Carry Flag |
What is the length of SP (stack pointer)?
Answer (Detailed Solution Below)
Microprocessors Question 12 Detailed Solution
Download Solution PDFStack Pointer:
- The stack pointer in the 8085 microprocessor is a 16-bit register that stores the address of the top of stack memory.
- The value of the stack pointer is decremented by 2 in the PUSH operation.
- It will increment by 2 in POP operation.
In 8085 microprocessor, the first machine cycle of every instruction is:
Answer (Detailed Solution Below)
Microprocessors Question 13 Detailed Solution
Download Solution PDFInstruction cycle in 8085 microprocessor
The time required to execute and fetch an entire instruction is called the instruction cycle.
The seven Machine Cycle in 8085 Microprocessor are :
1.) Opcode Fetch Cycle:
In this Machine Cycle in 8085, the processor places the contents of the Program Counter on the address lines, and through the reading process, reads the opcode of the instruction.
2.) Memory Read Cycle:
The 8085 executes the memory read cycle to read the contents of R/W memory or ROM.
In this Machine Cycle in 8085, the processor places the address on the address lines from the stack pointer, general-purpose register pair, or program counter, and through the reading process, reads the data from the addressed memory location.
3.) Memory Write Cycle:
The 8085 executes the memory write cycle to store the data in data memory or stack memory.
The processor places the address on the address lines from the stack pointer or general-purpose register pair and through the writing process, stores the data in the addressed memory location.
4.) I/O Read:
The I/O Read cycle is executed by the processor to read a data byte from the I/O port or from the peripheral, which is I/O, mapped in the system.
5.) I/O Write:
The microprocessor uses the I/O Write machine cycle for sending a data byte to the I/O port or to the peripheral in I/O mapped I/O systems.
6.) Interrupt Acknowledge Cycle:
In response to the INTR signal, 8085 executes an interrupt acknowledge machine cycle to read an instruction from the external device.
7.) Bus Idle Cycle:
Bus cycle of 8085 is used to access memory, peripheral devices (Input/Output devices), and Interrupt controller.
Carry flag is not affected after the execution of
Answer (Detailed Solution Below)
Microprocessors Question 14 Detailed Solution
Download Solution PDFADD: Add Register to Accumulator
Description: The content of the operand (register or memory) are added to the contents of the accumulator and the result is stored in the accumulator. If the operand is a memory location, that is indicated by the 16-bit address in the HL register.
Flags: All flags are modified to reflect the result of the addition.
INR: Increment Register Pair by 1
Description: The contents of the designated register/memory are incremented by 1 and the results are stored in the same place. If the operand is a memory location, it is specified by the contents of HL register pair.
Flags: S, Z, P, AC are modified to reflect the result of the operation. CY is not modified.
SBB: Subtract Source and Borrow from Accumulator
Description: The contents of the operand (register or memory) and the Borrow flag are subtracted from the contents of the accumulator and the results are placed in the accumulator. The contents of the operand are not altered; however, the previous Borrow flag is reset.
Flag: All flags are altered to reflect the result of the subtraction.
Important:
Different arithmetic instructions and the flags affected are mentioned below:
Instruction |
S |
Z |
AC |
P |
Cy |
INR, DCR |
Yes |
Yes |
Yes |
Yes |
No |
DAD |
No |
No |
No |
No |
Yes |
ADD, ADC, SUB, SBB, DAA |
Yes |
Yes |
Yes |
Yes |
Yes |
RAL, RLC, RAR, RRC |
No |
No |
No |
No |
Yes |
At the output, the content of A is:
MOV A,#33H
ORL A,#01H
ANL A,#10H
Answer (Detailed Solution Below)
Microprocessors Question 15 Detailed Solution
Download Solution PDFConcept:
- MOV A,#33H: This command will store the hexadecimal data 33H in the accumulator.
- ORL A,#01H: This command will OR the hexadecimal data 01H with accumulator data and store the resultant data in the accumulator.
- ANL A,#10H: This command will AND the hexadecimal data 10H with accumulator data.
Calculation:
- During OR operation, if any of the two inputs will be high, then the output will be high.
- During AND operation, if any of the two inputs will be low, then the output will be low.