BIT151 · Exam intelligence
Microprocessor and Computer Architecture important questions
From 7 past TU papers: which questions keep coming back, how much they carry, and what is most likely to show up next. Every question links to a model answer.
Most likely in the next examStatistical
Ranked by how often a topic is asked, its marks weight, and whether it is due after skipping the 2082 paper. No guarantees; study the whole syllabus.
1asked 2xavg 40 marks · due (skipped 2082) · Control ROM and mapping tableAnswerHideExplain the use of mapping table. [5]
Explain the use of mapping table. [5]
A mapping table is a data structure used in computer systems (particularly in memory management, file systems, and storage systems) to maintain a correspondence (mapping) between two sets of addresses or identifiers -- typically logical/...
2asked 4xavg 8 marks · due (skipped 2082) · Hardwired control unit design and block diagramAnswerHideWhat is control unit? Compare between microprogrammed and hardwired control unit. [5]
What is control unit? Compare between microprogrammed and hardwired control unit. [5]
The Control Unit (CU) is a component of the CPU that directs the operation of the processor. It interprets instructions fetched from memory and generates the necessary control signals to coordinate the activities of the ALU, registers, m...
3asked 4xavg 8 marks · due (skipped 2082) · Symbolic and binary microprogram representationAnswerHideWhat is micro program? Write symbolic microprogram for FETCH operation. [5]
What is micro program? Write symbolic microprogram for FETCH operation. [5]
Microprogram and Symbolic Microprogram for FETCH Operation
What is a Microprogram?
A microprogram is a sequence of microinstructions stored in a special memory called control memory (or control store). Each microinstruction specifies one or more micro-operations (elementary hardware operations) to be performed in a single clock cycle.
Key points:
- Microprogramming is a technique used to implement the control unit of a CPU.
- The concept was introduced by Maurice Wilkes.
- Each machine instruction is interpreted by executing a corresponding sequence of microinstructions.
- Microinstructions are stored in ROM-based control memory.
- A microprogram is analogous to a program, but operates at the register-transfer (hardware) level.
Microprogrammed Control Unit uses control memory to generate control signals, rather than hardwired logic.
Symbolic Microprogram for FETCH Operation
The FETCH cycle retrieves an instruction from memory and places it in the Instruction Register (IR), then increments the Program Counter (PC).
Registers Used:
| Register | Purpose |
|---|---|
| PC | Program Counter |
| MAR | Memory Address Register |
| MBR / MDR | Memory Buffer / Data Register |
| IR | Instruction Register |
Symbolic Microprogram (FETCH Cycle):
Step Micro-operation Comment
------ ---------------------------------- ---------------------------
T0: MAR ← PC Transfer PC content to MAR
T1: MBR ← M[MAR], PC ← PC + 1 Read memory into MBR;
Increment PC simultaneously
T2: IR ← MBR Load instruction into IR
Explanation of Each Step:
-
T0: MAR ← PC
- The content of the Program Counter is transferred to the Memory Address Register.
- This tells the memory which address to read from.
-
T1: MBR ← M[MAR], PC ← PC + 1
- The instruction stored at the address in MAR is fetched from memory into MBR.
- Simultaneously, PC is incremented to point to the next instruction.
- These two micro-operations can occur in parallel (same clock cycle).
-
T2: IR ← MBR
- The fetched instruction is transferred from MBR to the Instruction Register (IR).
- After this, the DECODE phase begins.
Summary Flow:
PC --> MAR --> Memory Read --> MBR --> IR
PC + 1 --> PC
The FETCH microprogram typically requires 3 micro-steps (T0, T1, T2) and forms the first part of the instruction cycle in any CPU.
4asked 5xavg 5 marks · Memory hierarchy in computer systemsAnswerHideExplain about memory hierarchy in computer system. [5]
Explain about memory hierarchy in computer system. [5]
Memory hierarchy is an organization of different types of memory storage in a computer system, arranged in levels based on speed, cost, and capacity. The fundamental idea is that faster memory is more expensive and smaller in size, while...
5asked 3xavg 10 marks · due (skipped 2082) · 8085 microprocessor block diagram and componentsAnswerHideDraw the block diagram of 8085 microprocessor and define its components.[10]
Draw the block diagram of 8085 microprocessor and define its components.[10]
A microprocessor is a single VLSI (Very Large Scale Integration) chip that integrates the entire CPU on one chip, including the ALU, control unit, and register array. It fetches instructions from memory, decodes them, and executes them t...
Most repeated questions
Topics asked at least twice, most-asked first.
asked 5xavg 5 marks · 2082, 2081, 2080.1, 2078, 0AnswerHideExplain about memory hierarchy in computer system. [5]
Explain about memory hierarchy in computer system. [5]
Memory hierarchy is an organization of different types of memory storage in a computer system, arranged in levels based on speed, cost, and capacity. The fundamental idea is that faster memory is more expensive and smaller in size, while...
asked 4xavg 8 marks · 2081, 2080, 2079, 0AnswerHideWhat is control unit? Compare between microprogrammed and hardwired control unit. [5]
What is control unit? Compare between microprogrammed and hardwired control unit. [5]
The Control Unit (CU) is a component of the CPU that directs the operation of the processor. It interprets instructions fetched from memory and generates the necessary control signals to coordinate the activities of the ALU, registers, m...
asked 4xavg 8 marks · 2081, 2080.1, 2078, 0AnswerHideWhat is micro program? Write symbolic microprogram for FETCH operation. [5]
What is micro program? Write symbolic microprogram for FETCH operation. [5]
Microprogram and Symbolic Microprogram for FETCH Operation
What is a Microprogram?
A microprogram is a sequence of microinstructions stored in a special memory called control memory (or control store). Each microinstruction specifies one or more micro-operations (elementary hardware operations) to be performed in a single clock cycle.
Key points:
- Microprogramming is a technique used to implement the control unit of a CPU.
- The concept was introduced by Maurice Wilkes.
- Each machine instruction is interpreted by executing a corresponding sequence of microinstructions.
- Microinstructions are stored in ROM-based control memory.
- A microprogram is analogous to a program, but operates at the register-transfer (hardware) level.
Microprogrammed Control Unit uses control memory to generate control signals, rather than hardwired logic.
Symbolic Microprogram for FETCH Operation
The FETCH cycle retrieves an instruction from memory and places it in the Instruction Register (IR), then increments the Program Counter (PC).
Registers Used:
| Register | Purpose |
|---|---|
| PC | Program Counter |
| MAR | Memory Address Register |
| MBR / MDR | Memory Buffer / Data Register |
| IR | Instruction Register |
Symbolic Microprogram (FETCH Cycle):
Step Micro-operation Comment
------ ---------------------------------- ---------------------------
T0: MAR ← PC Transfer PC content to MAR
T1: MBR ← M[MAR], PC ← PC + 1 Read memory into MBR;
Increment PC simultaneously
T2: IR ← MBR Load instruction into IR
Explanation of Each Step:
-
T0: MAR ← PC
- The content of the Program Counter is transferred to the Memory Address Register.
- This tells the memory which address to read from.
-
T1: MBR ← M[MAR], PC ← PC + 1
- The instruction stored at the address in MAR is fetched from memory into MBR.
- Simultaneously, PC is incremented to point to the next instruction.
- These two micro-operations can occur in parallel (same clock cycle).
-
T2: IR ← MBR
- The fetched instruction is transferred from MBR to the Instruction Register (IR).
- After this, the DECODE phase begins.
Summary Flow:
PC --> MAR --> Memory Read --> MBR --> IR
PC + 1 --> PC
The FETCH microprogram typically requires 3 micro-steps (T0, T1, T2) and forms the first part of the instruction cycle in any CPU.
asked 4xavg 5 marks · 2082, 2081, 2080.1, 0AnswerHideDifferentiate between RISC and CISC Architecture and Booth's Multiplication
Differentiate between RISC and CISC Architecture and Booth's Multiplication
RISC vs CISC Architecture and Booth's Multiplication Algorithm
STEP 1 - EXTRACT: Given Data
- Multiply 9 × 7 using Booth's Algorithm
- Multiplicand $M = 9$
- Multiplier $Q = 7$
- Both positive, need signed 2's complement representation
Bit-width check: $9 = 1001_2$ (4 bits). To represent as signed positive, we need a leading 0, so minimum 5 bits: $9 = 01001$. Similarly $7 = 00111$. Use $n = 5$ bits.
Part 1: RISC vs CISC Architecture [4 Marks]
RISC (Reduced Instruction Set Computer) uses a small set of simple, fixed-length instructions, each executing in a single clock cycle.
CISC (Complex Instruction Set Computer) uses a large set of complex, variable-length instructions where one instruction may perform several low-level operations over multiple cycles.
| Feature | RISC | CISC |
|---|---|---|
| Instruction Set | Small, simple | Large, complex |
| Instruction Length | Fixed | Variable |
| Execution Time | Single clock cycle | Multiple clock cycles |
| Addressing Modes | Few | Many |
| Control Unit | Hardwired | Microprogrammed |
| Registers | Large number | Fewer |
| Memory Access | Load/Store only | Instructions can access memory directly |
| Examples | ARM, MIPS, SPARC | Intel x86, VAX |
Part 2: Booth's Multiplication -- 9 × 7 [6 Marks]
Booth's Rules
| $Q_0$ | $Q_{-1}$ | Operation |
|---|---|---|
| 0 | 0 | Shift only |
| 1 | 1 | Shift only |
| 0 | 1 | $A = A + M$, then shift |
| 1 | 0 | $A = A - M$, then shift |
Setup
- $M = 01001$
- $-M = 10111$ (2's complement of $M$)
- $Q = 00111$
- $A = 00000$, $Q_{-1} = 0$, $n = 5$
Step-by-Step
Initial: $A=00000,\ Q=00111,\ Q_{-1}=0$
Cycle 1: $Q_0 Q_{-1} = 10 \Rightarrow A = A - M$ $$A = 00000 + 10111 = 10111$$ Before ASR: $A=10111,\ Q=00111,\ Q_{-1}=0$ After ASR: $A=11011,\ Q=10011,\ Q_{-1}=1$
Cycle 2: $Q_0 Q_{-1} = 11 \Rightarrow$ no op After ASR: $A=11101,\ Q=11001,\ Q_{-1}=1$
Cycle 3: $Q_0 Q_{-1} = 11 \Rightarrow$ no op After ASR: $A=11110,\ Q=11100,\ Q_{-1}=1$
Cycle 4: $Q_0 Q_{-1} = 01 \Rightarrow A = A + M$ $$A = 11110 + 01001 = 00111$$ Before ASR: $A=00111,\ Q=11100,\ Q_{-1}=1$ After ASR: $A=00011,\ Q=11110,\ Q_{-1}=0$
Cycle 5: $Q_0 Q_{-1} = 00 \Rightarrow$ no op After ASR: $A=00001,\ Q=11111,\ Q_{-1}=0$
Summary Table
| Cycle | A | Q | $Q_{-1}$ | $Q_0Q_{-1}$ | Operation |
|---|---|---|---|---|---|
| Init | 00000 | 00111 | 0 | -- | Initialize |
| 1 | 10111 | 00111 | 0 | 10 | A = A - M |
| ASR | 11011 | 10011 | 1 | Shift | |
| 2 | 11011 | 10011 | 1 | 11 | No op |
| ASR | 11101 | 11001 | 1 | Shift | |
| 3 | 11101 | 11001 | 1 | 11 | No op |
| ASR | 11110 | 11100 | 1 | Shift | |
| 4 | 00111 | 11100 | 1 | 01 | A = A + M |
| ASR | 00011 | 11110 | 0 | Shift | |
| 5 | 00011 | 11110 | 0 | 00 | No op |
| ASR | 00001 | 11111 | 0 | Shift |
Result
$$AQ = 00001,11111$$
Converting to decimal: $0000111111_2 = 63$
$$9 \times 7 = 63 \checkmark$$
Conclusion: Booth's algorithm correctly yields the product 63.
asked 3xavg 10 marks · 2081, 2080.1, 0AnswerHideDraw the block diagram of 8085 microprocessor and define its components.[10]
Draw the block diagram of 8085 microprocessor and define its components.[10]
A microprocessor is a single VLSI (Very Large Scale Integration) chip that integrates the entire CPU on one chip, including the ALU, control unit, and register array. It fetches instructions from memory, decodes them, and executes them t...
asked 3xavg 7 marks · 2080.1, 2080, 2079AnswerHideWrite a program to perform 8 bit division of data stored in memory location 8050 by data stored in memory location 8051 and store the quotient in memory location 8052 and remainder in 8053 memory location. [5]
Write a program to perform 8 bit division of data stored in memory location 8050 by data stored in memory location 8051 and store the quotient in memory location 8052 and remainder in 8053 memory location. [5]
- Dividend: stored at memory location 8050H - Divisor: stored at memory location 8051H - Quotient: store at memory location 8052H - Remainder: store at memory location 8053H --- The 8085 microprocessor does not have a direct division ins...
asked 3xavg 7 marks · 2080.1, 2079, 2078AnswerHideExplain the register organization of basic computer. [5]
Explain the register organization of basic computer. [5]
The basic computer (as described in the classic Morris Mano model) uses a set of registers to hold temporary data, addresses, and control information during program execution. The register organization defines the internal structure of t...
asked 3xavg 5 marks · 2081, 2080.1, 0AnswerHideWhat is pipelining? Explain about 4 segment instruction pipelines. [5]
What is pipelining? Explain about 4 segment instruction pipelines. [5]
Pipelining is a technique used in computer architecture to improve CPU performance by overlapping the execution of multiple instructions. Instead of completing one instruction fully before starting the next, the processor divides instruc...
asked 3xavg 5 marks · 2081, 2080.1, 0AnswerHideExplain the working procedure of Booth Multiplication algorithm. [5]
Explain the working procedure of Booth Multiplication algorithm. [5]
Booth's algorithm is an efficient algorithm for multiplying two signed binary numbers represented in 2's complement form. It handles both positive and negative numbers uniformly and reduces the number of additions/subtractions required. ...
asked 3xavg 5 marks · 2081, 2080, 2079AnswerHideDifferentiate between I/O mapped (isolated) I/O and memory mapped I/O. [5]
Differentiate between I/O mapped (isolated) I/O and memory mapped I/O. [5]
--- - I/O devices are given a separate address space from memory. - Special I/O instructions (such as IN and OUT) are used to communicate with I/O devices. - The processor has separate control lines for memory and I/O operations (e.g., M...
asked 3xavg 5 marks · 2081, 2080.1, 0AnswerHideWrite short notes on (any two):
a) DMA
b) Flags in 8085 Microprocessor
c) Instruction set. [5]
Write short notes on (any two):
a) DMA
b) Flags in 8085 Microprocessor
c) Instruction set. [5]
Short Notes (Any Two): 5 Marks
a) DMA (Direct Memory Access)
DMA is a technique that allows peripheral devices to transfer data directly to/from memory without involving the CPU for each byte of transfer.
Key Points:
- Normally, the CPU handles all data transfers between I/O devices and memory, which wastes CPU time.
- In DMA, a special hardware unit called the DMA Controller (DMAC) takes over the system bus temporarily.
- The CPU sends the starting address, block size, and direction (read/write) to the DMAC, then releases the bus.
- The DMAC performs the transfer and sends an interrupt to the CPU when done.
Steps in DMA Transfer:
- CPU initializes the DMAC (address, count, mode).
- DMAC sends a Bus Request (BR) to the CPU.
- CPU grants the bus via Bus Grant (BG) and suspends its activity.
- DMAC transfers data directly between memory and I/O device.
- After transfer, DMAC releases the bus and interrupts the CPU.
Advantages:
- Very fast data transfer.
- CPU is free to do other tasks.
- Suitable for high-speed devices like disk drives, video cards.
b) Flags in 8085 Microprocessor
The 8085 microprocessor has a special 8-bit Flag Register (also called the Program Status Word) that reflects the result of arithmetic and logical operations.
The 8085 has 5 flags:
| Flag | Symbol | Description |
|---|---|---|
| Sign Flag | S | Set to 1 if result is negative (MSB = 1); else 0 |
| Zero Flag | Z | Set to 1 if result is zero; else 0 |
| Auxiliary Carry Flag | AC | Set to 1 if carry from bit 3 to bit 4 occurs (used in BCD operations) |
| Parity Flag | P | Set to 1 if result has even number of 1s; else 0 |
| Carry Flag | CY | Set to 1 if there is a carry out from the MSB (bit 7) |
Flag Register Bit Layout:
D7 D6 D5 D4 D3 D2 D1 D0
S Z 0 AC 0 P 1 CY
Importance:
- Flags are used by conditional jump instructions (e.g., JZ, JNZ, JC, JNC) to control program flow.
- They are automatically set or reset after arithmetic/logical operations.
c) Instruction Set
An instruction set (also called Instruction Set Architecture, ISA) is the complete collection of instructions that a processor can understand and execute.
Key Points:
- It defines the interface between hardware and software.
- Each instruction tells the CPU what operation to perform, on what data, and where to store the result.
Types of Instructions:
| Category | Examples | Description |
|---|---|---|
| Data Transfer | MOV, MVI, LDA, STA | Move data between registers/memory |
| Arithmetic | ADD, SUB, INR, DCR | Perform arithmetic operations |
| Logical | ANA, ORA, XRA, CMA | Perform bitwise logical operations |
| Branch/Control | JMP, CALL, RET, JZ | Control flow of program |
| I/O and Machine Control | IN, OUT, HLT, NOP | Handle I/O and CPU control |
Instruction Format:
An instruction typically has:
- Opcode: specifies the operation
- Operand(s): specifies the data or address
Types of Instruction Sets:
- RISC (Reduced Instruction Set Computer): fewer, simpler instructions (e.g., ARM)
- CISC (Complex Instruction Set Computer): many complex instructions (e.g., x86, 8085)
Importance:
- Determines the capability and performance of a processor.
- Programmers and compilers use the instruction set to write programs.
asked 3xavg 8 marks · 2082, 2080.1, 2080AnswerHideExplain different addressing modes in 8085 microprocessor.Explain any five arithmetic instructions in 8085 microprocessor with suitable example.[5+5]
Explain different addressing modes in 8085 microprocessor.Explain any five arithmetic instructions in 8085 microprocessor with suitable example.[5+5]
(a) Addressing Modes An addressing mode refers to the way in which the operand (data) is specified in an instruction. The 8085 microprocessor supports the following addressing modes: --- - The operand (data) is directly specified in the ...
asked 3xavg 5 marks · 2082, 2080, 2079AnswerHideWrite an assembly language program to multiply 08H and 09H, store the product in memory location 8050H and carry in 8051H using 8085 microprocessor instructions. [5]
Write an assembly language program to multiply 08H and 09H, store the product in memory location 8050H and carry in 8051H using 8085 microprocessor instructions. [5]
Assembly Language Program: Multiply 08H × 09H (8085 Microprocessor)
STEP 1 - Given Data
- Multiplicand = 08H
- Multiplier = 09H
- Product storage address = 8050H
- Carry (higher byte) storage address = 8051H
STEP 2 - Solution
Concept
The 8085 has no hardware multiply instruction, so multiplication is done by repeated addition: add the multiplicand (08H) to itself the number of times given by the multiplier (09H). Any carry beyond 8 bits is counted in a separate register.
Program
LXI H, 8050H ; HL points to product location 8050H
MVI B, 08H ; B = multiplicand (08H)
MVI C, 09H ; C = multiplier / counter (09H)
MVI A, 00H ; A = 00H (accumulate product low byte)
MVI D, 00H ; D = 00H (accumulate carry / high byte)
LOOP: ADD B ; A = A + B
JNC SKIP ; if no carry, skip
INR D ; else increment high byte
SKIP: DCR C ; decrement counter
JNZ LOOP ; repeat until C = 0
MOV M, A ; store product low byte at 8050H
INX H ; HL points to 8051H
MOV M, D ; store carry / high byte at 8051H
HLT ; halt
Execution Trace
| Iteration | A before | ADD B (08H) | Carry | D |
|---|---|---|---|---|
| 1 | 00H | 08H | 0 | 00H |
| 2 | 08H | 10H | 0 | 00H |
| 3 | 10H | 18H | 0 | 00H |
| 4 | 18H | 20H | 0 | 00H |
| 5 | 20H | 28H | 0 | 00H |
| 6 | 28H | 30H | 0 | 00H |
| 7 | 30H | 38H | 0 | 00H |
| 8 | 38H | 40H | 0 | 00H |
| 9 | 40H | 48H | 0 | 00H |
Verification
$$08H \times 09H = 8 \times 9 = 72_{10} = 48H$$
Since the result 72 fits in one byte (< 256), no carry is generated, so D = 00H.
Result in Memory
| Address | Content | Meaning |
|---|---|---|
| 8050H | 48H | Product (low byte) |
| 8051H | 00H | Carry (high byte) |
The final product is 48H with carry 00H.
asked 3xavg 5 marks · 2082, 2081, 2078AnswerHideExplain different arithmetic micro operations in brief. [5]
Explain different arithmetic micro operations in brief. [5]
Arithmetic micro-operations are basic operations performed on numeric data stored in registers. They involve arithmetic computations on binary data. --- The most fundamental arithmetic micro-operation. The contents of two registers are a...
asked 2xavg 40 marks · 2079, 2078AnswerHideExplain the use of mapping table. [5]
Explain the use of mapping table. [5]
A mapping table is a data structure used in computer systems (particularly in memory management, file systems, and storage systems) to maintain a correspondence (mapping) between two sets of addresses or identifiers -- typically logical/...
Study every one of these with model answers, flashcards, and MCQs.
Open BIT151 study modes