Skip to main content

Chapter 9

Computer Organization (old course)

TU BIM past exam questions

Past questions and answers

140 questions set from this chapter, 7 of them more than once; 6 are most repeated (set, or a close variant set, in 3 or more exams). Most repeated first.

  • Most repeated · 3 of 16 exams
  • 2014 AD Model · 4 marks

The 8-bit registers AR, BR, CR and DR initially have the following values: AR = 10001010, BR = 11100011, CR = 00001111, DR = 11111110. Determine the 8-bit values in each register after the execution of the following sequence of micro-operations.
AR←AR+BRAR \leftarrow AR + BR\nCR←CR∧DR,  BR←BR+1CR \leftarrow CR \wedge DR,\; BR \leftarrow BR + 1\nAR←AR−CRAR \leftarrow AR - CR

Similar questions: The 4-bit registers A,B,C and D initially (2015 AD) · The 8-bit register AR, BR, CR and (2016 AD)

Answer

Initial values: AR=10001010AR = 10001010, BR=11100011BR = 11100011, CR=00001111CR = 00001111, DR=11111110DR = 11111110.

1. AR←AR+BRAR \leftarrow AR + BR

10001010+11100011=1 0110110110001010 + 11100011 = 1\,01101101. The carry out is discarded, so AR=01101101AR = 01101101.

2. CR←CR∧DR, BR←BR+1CR \leftarrow CR \wedge DR,\ BR \leftarrow BR + 1 (both happen in the same clock pulse)

CR=00001111∧11111110=00001110CR = 00001111 \wedge 11111110 = 00001110

BR=11100011+1=11100100BR = 11100011 + 1 = 11100100

3. AR←AR−CRAR \leftarrow AR - CR

01101101−00001110=0101111101101101 - 00001110 = 01011111 (that is, 109−14=95109 - 14 = 95).

Final values:

RegisterValue
AR01011111
BR11100100
CR00001110
DR11111110

Answer checked by Claude Sonnet · Oct 21, 2026

Test yourself · 2 MCQs

Loading…

  • Most repeated · 3 of 16 exams
  • 2015 AD · 4 marks

The 4-bit registers A,B,C and D initially have the following values: A = 0010, B = 0111, C = 1000, D = 1111. Determine the 4-bit values in each register after the execution of the following sequence of micro-operations.
A←A+CA \leftarrow A + C\nC←C∧D,  D←D+1C \leftarrow C \wedge D,\; D \leftarrow D + 1\nA←A−BA \leftarrow A - B

Similar questions: The 8-bit registers AR, BR, CR and (2014 AD Model) · The 8-bit register AR, BR, CR and (2016 AD)

Answer

Initial: A=0010A = 0010, B=0111B = 0111, C=1000C = 1000, D=1111D = 1111.

  1. A←A+CA \leftarrow A + C: 0010+1000=10100010 + 1000 = 1010, so A=1010A = 1010.
  2. C←C∧DC \leftarrow C \wedge D and D←D+1D \leftarrow D + 1 occur in the same clock, using the old values:
    • C=1000∧1111=1000C = 1000 \wedge 1111 = 1000
    • D=1111+1=10000D = 1111 + 1 = 10000, truncated to 4 bits, D=0000D = 0000 (carry lost).
  3. A←A−BA \leftarrow A - B: 1010−0111=00111010 - 0111 = 0011 (10 - 7 = 3), so A=0011A = 0011.

Final values:

RegisterValue
A0011
B0111
C1000
D0000

Answer checked by Claude Sonnet · Oct 21, 2026

Test yourself · 2 MCQs

Loading…

  • Most repeated · 3 of 16 exams
  • 2016 AD · 1 mark

What is the register value of A after arithmetic right shift if A = 10011100?

Similar questions: What is the register value of A (2018 AD) · What is the value of register A (2019 AD)

Answer

An arithmetic right shift keeps the sign bit and shifts the other bits right.

A=10011100⇒A = 10011100 \Rightarrow after ashr A=11001110A = 11001110.

Answer checked by Claude Sonnet · Oct 21, 2026

Test yourself · 2 MCQs

Loading…

  • Most repeated · 3 of 16 exams
  • 2016 AD · 4 marks

The 8-bit register AR, BR, CR and DR initially have following values: AR = 11110010, BR = 11111111, CR = 10111001, DR = 11101010. Determine the 8-bit value in each register after the execution of the following sequence of micro operations:
AR←AR+BRAR \leftarrow AR + BR\nCR←CR∨DR,  BR←BR+1CR \leftarrow CR \vee DR,\; BR \leftarrow BR + 1\nAR←AR+CR,  DR←DR+1AR \leftarrow AR + CR,\; DR \leftarrow DR + 1

Similar questions: The 8-bit registers AR, BR, CR and (2014 AD Model) · The 4-bit registers A,B,C and D initially (2015 AD)

Answer

Assume the micro operations on separate lines execute one after another, and that those on the same line execute simultaneously (in the same clock pulse, using the old register values). Carries out of bit 8 are discarded.

Initial values: AR = 11110010, BR = 11111111, CR = 10111001, DR = 11101010.

Step 1: AR←AR+BRAR \leftarrow AR + BR

11110010+11111111=1 1111000111110010 + 11111111 = 1\,11110001

so AR = 11110001 (carry discarded).

Step 2: CR←CR∨DR,  BR←BR+1CR \leftarrow CR \vee DR,\; BR \leftarrow BR + 1

CR=10111001∨11101010=11111011CR = 10111001 \vee 11101010 = 11111011

BR=11111111+1=00000000BR = 11111111 + 1 = 00000000

Step 3: AR←AR+CR,  DR←DR+1AR \leftarrow AR + CR,\; DR \leftarrow DR + 1

AR=11110001+11111011=1 11101100⇒11101100AR = 11110001 + 11111011 = 1\,11101100 \Rightarrow 11101100

DR=11101010+1=11101011DR = 11101010 + 1 = 11101011

Final values:

RegisterValue
AR11101100
BR00000000
CR11111011
DR11101011

Answer checked by Claude Sonnet · Oct 21, 2026

Test yourself · 2 MCQs

Loading…

  • Most repeated · 3 of 16 exams
  • 2018 AD · 1 mark

What is the register value of A after arithmetic right shift if A = 11011101?

Similar questions: What is the register value of A (2016 AD) · What is the value of register A (2019 AD)

Answer

In an arithmetic right shift the sign bit is kept and copied into the next position, and the least significant bit is lost.

A=11011101→11101110A = 11011101 \to 11101110

Answer checked by Claude Sonnet · Oct 21, 2026

Test yourself · 2 MCQs

Loading…

  • Most repeated · 3 of 16 exams
  • 2019 AD · 1 mark

What is the value of register A after performing arithmetic shift right if A=11101010?

Similar questions: What is the register value of A (2016 AD) · What is the register value of A (2018 AD)

Answer

Arithmetic shift right keeps the sign bit and shifts the other bits right by one.

A=11101010  ⇒  A=11110101A = 11101010 \;\Rightarrow\; A = 11110101

The sign bit 11 is replicated and the LSB 00 is lost. (In decimal, −22→−11-22 \to -11.)

Answer checked by Claude Sonnet · Oct 21, 2026

Test yourself · 2 MCQs

Loading…

  • Asked 2 times
  • 2012 AD · 1 mark
  • 2021 AD · 10 marks

Differentiate between RISC and CISC.

Answer

BasisRISCCISC
Full formReduced Instruction Set ComputerComplex Instruction Set Computer
Instruction setSmall, simple instructionsLarge, complex instructions
Instruction lengthFixedVariable
Execution timeMostly one clock cycle per instructionSeveral cycles, varying by instruction
Addressing modesFew and simpleMany
Memory accessOnly LOAD and STORE access memoryMany instructions can access memory directly
RegistersLarge register fileFewer registers
Control unitHardwiredUsually microprogrammed
PipeliningEasy and efficientDifficult
Code sizeLarger programs (more instructions)Smaller programs
CompilerComplex, since the compiler does more workSimple
ExamplesARM, MIPS, SPARCIntel x86, VAX, IBM 370

Answer checked by Claude Sonnet · Oct 21, 2026

Test yourself · 2 MCQs

Loading…

  • Asked 2 times
  • 2014 AD · 1 mark
  • 2019 AD · 1 mark

Define locality of reference.

Answer

Locality of reference is the tendency of a program to access, over a short time interval, only a small localized set of memory addresses repeatedly (temporal locality: recently used items are used again; spatial locality: nearby addresses are used soon). Cache memory exploits this property.

Answer checked by Claude Sonnet · Oct 21, 2026

Test yourself · 2 MCQs

Loading…

  • Asked 2 times
  • 2014 AD · 1 mark
  • 2019 AD · 1 mark

What is associative memory?

Answer

Associative memory (content addressable memory, CAM) is a memory accessed by the content of the data rather than by an address. The search key is compared with all stored words simultaneously and the matching word(s) are returned, which makes searching very fast.

Answer checked by Claude Sonnet · Oct 21, 2026

Test yourself · 2 MCQs

Loading…

  • Asked 2 times
  • 2016 AD · 1 mark
  • 2018 AD · 1 mark

What is the function of IOP?

Answer

The Input-Output Processor (IOP) is a processor with its own memory and instruction set that handles I/O transfers directly with memory (DMA) and communicates with peripherals. It relieves the CPU of I/O work, so the CPU is free for computation and the CPU and I/O devices work in parallel.

Answer checked by Claude Sonnet · Oct 21, 2026

Test yourself · 2 MCQs

Loading…

  • Asked 2 times
  • 2017 AD · 1 mark
  • 2019 AD · 1 mark

Differentiate between address space and memory space.

Answer

Address spaceMemory space
The set of addresses generated by a program, called virtual or logical addresses.The set of actual physical locations in main memory.
Defined by the number of address bits in the instruction.Defined by the size of the physical main memory installed.
Can be larger than the memory space in virtual memory.Usually smaller than the address space.

Answer checked by Claude Sonnet · Oct 21, 2026

Test yourself · 2 MCQs

Loading…

  • Asked 2 times
  • 2017 AD · 1 mark
  • 2019 AD · 1 mark

Write microinstruction format of basic computer.

Answer

The microinstruction of the basic computer is 20 bits long, with these fields:

F1F2F3CDBRAD
3 bits3 bits3 bits2 bits2 bits7 bits
  • F1, F2, F3: microoperation fields (each selects one of up to 7 microoperations).
  • CD: condition field, which selects the status bit to be tested (U, I, S or Z).
  • BR: branch field, which selects the type of branch (JMP, CALL, RET, MAP).
  • AD: address field, which gives the branch address in the 128-word control memory.

Answer checked by Claude Sonnet · Oct 21, 2026

Test yourself · 2 MCQs

Loading…

  • Asked 2 times
  • 2017 AD · 1 mark
  • 2019 AD · 1 mark

Define cache coherence.

Answer

Cache coherence is the requirement in a multiprocessor system that all the caches holding copies of the same memory block see the same (latest) value. When one processor changes its copy, the other copies and main memory must be updated or invalidated.

Answer checked by Claude Sonnet · Oct 21, 2026

Test yourself · 2 MCQs

Loading…

  • 2014 AD Model · 4 marks

Multiply -47 and +102 using "Multiplication of signed magnitude data" algorithm.

Similar questions: Multiply (-37) x (+13) using "multiplication of (2017 AD)

Answer

Signs. Multiplicand B=−47B = -47 has sign 1 and multiplier Q=+102Q = +102 has sign 0, so the product sign is 1⊕0=11 \oplus 0 = 1 (negative).

Magnitudes (7 bits). B=47=0101111B = 47 = 0101111, Q=102=1100110Q = 102 = 1100110. AA and EE are cleared, and the sequence counter is SC=7SC = 7.

At each step, if Q0=1Q_0 = 1 then EA←A+BEA \leftarrow A + B. Then EAQEAQ is shifted right and SCSC is decremented.

StepQ0Q_0OperationEEAAQQSC
Initial0000000011001107
10shift right0000000001100116
21add BB, shift0001011110110015
31add BB, shift0010001101011004
40shift right0001000110101103
50shift right0000100011010112
61add BB, shift0001101111101011
71add BB, shift0010010101110100

The product magnitude is A Q=0100101  01110102=4794A\,Q = 0100101\;0111010_2 = 4794.

With the sign bit As=1As = 1, the result is −4794-4794, which agrees with (−47)×(+102)=−4794(-47)\times(+102) = -4794.

Answer checked by Claude Sonnet · Oct 21, 2026

Test yourself · 2 MCQs

Loading…

  • 2016 AD · 4 marks

Perform the operation (-19) x (+21) by using signed magnitude multiplication algorithm.

Similar questions: Perform the operation (-19) x (121) by (2018 AD)

Answer

Setup. Magnitudes: 19=1001119 = 10011 (multiplicand B), 21=1010121 = 10101 (multiplier Q). Signs: Bs=1B_s = 1, Qs=0Q_s = 0, so the product sign is 1⊕0=11 \oplus 0 = 1 (negative). Registers: A = 00000, E = 0, SC = 5.

At each step, if Q0=1Q_0 = 1 then A←A+BA \leftarrow A + B; then shift right E, A, Q together.

StepQ0OperationEAQ
Initial00000010101
11A = A + B01001110101
shift right00100111010
20shift right00010011101
31A = A + B01011111101
shift right00101111110
40shift right00010111111
51A = A + B01100011111
shift right00110001111

The product magnitude is A Q = 01100 011112=39901100\,01111_2 = 399.

With the sign bit (1) attached, the result is 1 01100011112=−3991\,0110001111_2 = -399.

Check: (−19)×(+21)=−399(-19)\times(+21) = -399.

Answer checked by Claude Sonnet · Oct 21, 2026

Test yourself · 2 MCQs

Loading…

  • 2017 AD · 1 mark

Why interrupt initiated I/O is better than programmed I/O techniques?

Similar questions: Why interrupt initiated I/O is better than (2019 AD)

Answer

In programmed I/O the CPU keeps polling the device status flag, which wastes CPU time while it waits. In interrupt-initiated I/O the device signals the CPU only when it is ready, so the CPU runs other programs meanwhile and the system's efficiency is much higher.

Answer checked by Claude Sonnet · Oct 21, 2026

Test yourself · 2 MCQs

Loading…

  • 2017 AD · 4 marks

Multiply (-37) x (+13) using "multiplication of signed 2's complement data" algorithm.

Similar questions: Multiply -47 and +102 using "Multiplication of (2014 AD Model)

Answer

Use Booth's algorithm for signed 2's complement numbers, with 7 bits per operand (6 bits for 37 plus the sign).

BR=−37=1011011BR = -37 = 1011011 (multiplicand), BR‾+1=0100101=+37\overline{BR}+1 = 0100101 = +37

QR=+13=0001101QR = +13 = 0001101 (multiplier), AC=0000000AC = 0000000, Qn+1=0Q_{n+1} = 0, SC=7SC = 7

Rule by QnQn+1Q_n Q_{n+1}: 10 gives AC←AC−BRAC \leftarrow AC - BR, 01 gives AC←AC+BRAC \leftarrow AC + BR, 00 or 11 gives no operation. Then arithmetic shift right AC, QR.

StepQnQn+1Q_nQ_{n+1}OperationACQRQn+1Q_{n+1}
Initial000000000011010
110AC - BR010010100011010
ashr001001010001101
201AC + BR110110110001101
ashr111011011000110
310AC - BR001101111000110
ashr000110111100011
411ashr000011011110001
501AC + BR110000111110001
ashr111000011111000
600ashr111100001111100
700ashr111110000111110

The product is AC QR=1111100 0011111=111110000111112AC\,QR = 1111100\,0011111 = 11111000011111_2.

It is negative. Its magnitude is the 2's complement 000001111000012=48100000111100001_2 = 481.

So (−37)×(+13)=−481(-37)\times(+13) = -481.

Answer checked by Claude Sonnet · Oct 21, 2026

Test yourself · 2 MCQs

Loading…

  • 2018 AD · 4 marks

Perform the operation (-19) x (121) by using signed magnitude multiplication algorithm.

Similar questions: Perform the operation (-19) x (+21) by (2016 AD)

Answer

Signs differ (one operand negative, one positive), so the product sign bit is 11 (negative). Signed-magnitude multiplication multiplies only the magnitudes by shift-and-add.

  • Multiplicand B=121=11110012B = 121 = 1111001_2 (magnitude), sign 00
  • Multiplier Q=19=100112Q = 19 = 10011_2 (magnitude), sign 11 (for −19-19)
  • Sign of product: 1⊕0=11 \oplus 0 = 1

Scan the multiplier bits from LSB to MSB: add the (shifted) multiplicand when the bit is 1, otherwise add nothing.

StepMultiplier bitActionPartial product
11add 121121121121
21add 121≪1=242121 \ll 1 = 242363363
30no add363363
40no add363363
51add 121≪4=1936121 \ll 4 = 193622992299

Magnitude of product =2299=1000111110112= 2299 = 100011111011_2.

With the sign bit attached, the result is 1 1000111110111\,100011111011 in signed-magnitude form, i.e. −2299-2299.

Check: 19×121=229919 \times 121 = 2299, so (−19)×121=−2299(-19)\times 121 = -2299.

Answer checked by Claude Sonnet · Oct 21, 2026

Test yourself · 2 MCQs

Loading…

  • 2018 AD · 4 marks

Write a program to multiply two positive numbers by repeated addition method. For example, 5x4=5+5+5+5.

Similar questions: Write a program to multiply two positive (2019 AD)

Answer

Multiplication is done by adding the multiplicand to a running sum as many times as the value of the multiplier.

#include <stdio.h>

int main(void) {
    int a, b, product = 0, i;
    printf("Enter two positive numbers: ");
    scanf("%d %d", &a, &b);

    for (i = 1; i <= b; i++) {
        product = product + a;   /* a added b times */
    }

    printf("%d x %d = %d\n", a, b, product);
    return 0;
}

For a=5, b=4a=5,\ b=4: the loop gives 0+5=50+5=5, 1010, 1515, 2020, so 5×4=5+5+5+5=205\times 4 = 5+5+5+5 = 20.

Answer checked by Claude Sonnet · Oct 21, 2026

Test yourself · 2 MCQs

Loading…

  • 2019 AD · 1 mark

Why interrupt initiated I/O is better than programmed I/O?

Similar questions: Why interrupt initiated I/O is better than (2017 AD)

Answer

In programmed I/O the CPU must keep polling the device status flag and wastes time waiting. In interrupt-initiated I/O the CPU carries on with useful work and the device interrupts it only when ready for a transfer, so CPU time is used efficiently and response to devices is faster.

Answer checked by Claude Sonnet · Oct 21, 2026

Test yourself · 2 MCQs

Loading…

  • 2019 AD · 4 marks

Write a program to multiply two positive numbers by a repeated addition method and explain each statement.

Similar questions: Write a program to multiply two positive (2018 AD)

Answer

Multiplication by repeated addition: the multiplicand is added to the product as many times as the multiplier.

#include <stdio.h>

int main(void) {
    int a, b, product = 0, i;        /* a = multiplicand, b = multiplier */

    printf("Enter two positive numbers: ");
    scanf("%d %d", &a, &b);          /* read both numbers */

    for (i = 1; i <= b; i++) {       /* repeat b times */
        product = product + a;       /* add a to the running sum */
    }

    printf("Product = %d\n", product);
    return 0;
}

Explanation of statements

  • #include <stdio.h> includes the library for input/output.
  • int a, b, product = 0, i; declares the operands, a loop counter, and the product initialised to 0 (the additive identity).
  • scanf(...) reads the two numbers.
  • for (i = 1; i <= b; i++) makes the loop run exactly b times.
  • product = product + a; adds the multiplicand to the sum in every iteration.
  • printf(...) prints the result.

Example: 5×45\times 4 gives 0+5+5+5+5=200+5+5+5+5 = 20.

Answer checked by Claude Sonnet · Oct 21, 2026

Test yourself · 2 MCQs

Loading…

  • 2019 AD · 4 marks

An instruction is stored at memory location 400 with its address field at location 401. The address field has value 500. A processor register R1 contains the number 250. Evaluate the effective address if the addressing mode of the instruction is: (a) Direct (b) Immediate (c) Register indirect (d) Index with R1 as index register

Similar questions: An instruction is stored at location 500 (2021 AD)

Answer

The address field is at location 401 and has value A=500A = 500; R1=250R1 = 250.

  • (a) Direct: EA=A=500EA = A = 500.
  • (b) Immediate: the operand is the address field itself, so there is no effective address in memory; the operand is 500 and lies at location 401.
  • (c) Register indirect: EA=[R1]=250EA = [R1] = 250.
  • (d) Index with R1: EA=A+R1=500+250=750EA = A + R1 = 500 + 250 = 750.

Answer checked by Claude Sonnet · Oct 21, 2026

Test yourself · 2 MCQs

Loading…

  • 2021 AD · 10 marks

An instruction is stored at location 500 with its address field at location 501. The address field has value of 800. A processor register R1 contains the number 300. Evaluate the effective address if the addressing mode of the instruction is (a) Direct (b) Immediate (c) Relative (d) Register Indirect.

Similar questions: An instruction is stored at memory location (2019 AD)

Answer

The instruction is at 500 and its address field at 501, so after fetching the instruction PC=502PC = 502. Address field A=800A = 800, R1=300R1 = 300.

  • (a) Direct: EA=A=800EA = A = 800.
  • (b) Immediate: the operand is the address field itself, so EA=501EA = 501 (the operand value is 800).
  • (c) Relative: EA=PC+A=502+800=1302EA = PC + A = 502 + 800 = 1302.
  • (d) Register indirect: EA=[R1]=300EA = [R1] = 300.

Answer checked by Claude Sonnet · Oct 21, 2026

Test yourself · 2 MCQs

Loading…

  • 2014 AD Model · 1 mark

Is handshaking protocol better than strobe?

Answer

Yes. In strobe control, only one control line is used and the source (or destination) has no way to know whether the other side actually received (or supplied) the data. In handshaking, two control lines (e.g. data valid and data accepted) are used, so both units confirm each transfer. This makes handshaking more reliable and lets units of different speeds communicate correctly, although it needs an extra control line.

Answer checked by Claude Sonnet · Oct 21, 2026

Test yourself · 2 MCQs

Loading…

  • 2014 AD Model · 1 mark

Define Gray Code.

Answer

Gray code is a binary code in which two successive values differ in only one bit. For example, the 2-bit sequence is 00, 01, 11, 10. It is used in shaft encoders and Karnaugh maps to avoid errors during transitions.

Answer checked by Claude Sonnet · Oct 21, 2026

Test yourself · 2 MCQs

Loading…

  • 2014 AD Model · 1 mark

What is meant by structural hazard in pipelining?

Answer

A structural hazard occurs in a pipeline when two instructions need the same hardware resource (such as memory or the ALU) in the same clock cycle, so one of them must wait. It arises from insufficient hardware, e.g. a single memory used for both instruction fetch and data access.

Answer checked by Claude Sonnet · Oct 21, 2026

Test yourself · 2 MCQs

Loading…

  • 2014 AD Model · 1 mark

How many flip flops are required to construct Data Register of Basic Computer?

Answer

16 flip-flops. The Data Register (DR) of the basic computer is a 16-bit register, and one flip-flop is needed for each bit.

Answer checked by Claude Sonnet · Oct 21, 2026

Test yourself · 2 MCQs

Loading…

  • 2014 AD Model · 1 mark

Make distinction between multiport memory and cross bar switch.

Answer

Multiport memory: each memory module has several ports, one per processor, and the control, switching and priority logic is inside the memory module. It gives high transfer rate but needs expensive memory control logic and many cables; it suits small systems.

Crossbar switch: a matrix of switches between processors and memory modules, with the switching logic placed at the crosspoints outside the memory. Memory modules are simple, and several processors can access different modules at the same time, but the number of switches grows as n×mn \times m, so the hardware becomes complex.

Answer checked by Claude Sonnet · Oct 21, 2026

Test yourself · 2 MCQs

Loading…

  • 2014 AD Model · 1 mark

Define intra instruction level parallelism.

Answer

Intra-instruction level parallelism means exploiting parallelism inside the execution of a single instruction, by performing its different micro-operations or sub-steps (fetch, decode, operand access, execute) simultaneously on separate hardware units or in overlapping stages, as in pipelining.

Answer checked by Claude Sonnet · Oct 21, 2026

Test yourself · 2 MCQs

Loading…

  • 2014 AD Model · 1 mark

Why is I/O interface required?

Answer

An I/O interface is required because peripherals differ from the CPU in speed, data format, word length and signal levels. The interface converts data formats and signal levels, synchronises the timing of the slow device with the fast CPU, provides buffering and status information, and selects the device through address decoding and control signals.

Answer checked by Claude Sonnet · Oct 21, 2026

Test yourself · 2 MCQs

Loading…

  • 2014 AD Model · 1 mark

What is three state gate?

Answer

A three-state (tri-state) gate is a digital circuit whose output can be in logic 0, logic 1, or a high-impedance (Hi-Z) state, which acts as an open circuit. An enable input controls it: when enabled it behaves as a normal buffer, otherwise the output is disconnected. It lets many devices share a common bus.

Answer checked by Claude Sonnet · Oct 21, 2026

Test yourself · 2 MCQs

Loading…

  • 2014 AD Model · 1 mark

Differentiate between assembly language and machine language.

Answer

BasisAssembly languageMachine language
FormUses mnemonics such as ADD, MOVUses binary 0s and 1s
ReadabilityEasier for humans to read and writeVery difficult for humans
TranslationNeeds an assembler to convert to machine codeDirectly executed by the CPU
DebuggingEasierHard and error-prone
PortabilitySpecific to a processor family, but easier to modifySpecific to a particular CPU

Answer checked by Claude Sonnet · Oct 21, 2026

Test yourself · 2 MCQs

Loading…

  • 2014 AD Model · 1 mark

Why memory hierarchy is maintained in computer system?

Answer

No single memory is at once very fast, very large and cheap, so a hierarchy (registers, cache, main memory, secondary storage) is maintained to get speed close to the fastest level and capacity and cost close to the slowest level. Programs show locality of reference, so most accesses are served by the small fast levels and only a few go to the slow, large ones.

Answer checked by Claude Sonnet · Oct 21, 2026

Test yourself · 2 MCQs

Loading…

  • 2014 AD Model · 4 marks

Write a program to multiply two positive numbers by a repeated addition method. For example, to multiply 7 x 3, the program evaluates the product by adding 7 three times.

Answer

The program uses basic computer assembly language. The multiplier is stored as a negative count in Y, so ISZ can count it up to zero. It adds X to the product P once per pass.

        ORG 100
LOP,    LDA P       / AC <- P
        ADD X       / AC <- P + X
        STA P       / P <- P + X
        ISZ Y       / Y <- Y + 1, skip if Y = 0
        BUN LOP     / repeat while Y != 0
        HLT
X,      DEC 7       / multiplicand
Y,      DEC -3      / -(multiplier), counts the additions
P,      DEC 0       / product, initially 0

For 7×37 \times 3, the loop runs three times and PP becomes 7→14→217 \to 14 \to 21. The result P=21P = 21 is stored in memory.

Answer checked by Claude Sonnet · Oct 21, 2026

Test yourself · 2 MCQs

Loading…

  • 2014 AD Model · 4 marks

Write a program to input and pack two characters.

Answer

Two 8-bit characters are read from the keyboard. The first is shifted left by 8 positions, and the second is added into the low byte. This gives one 16-bit word.

        ORG 100
        CLA
        CLE
FST,    SKI             / wait for the first character
        BUN FST
        INP             / AC(0-7) <- INPR
        STA CHR
        CLE
LP,     LDA CHR
        CIL             / rotate left through E
        STA CHR
        ISZ CTR         / repeat 8 times
        BUN LP
SND,    SKI             / wait for the second character
        BUN SND
        CLA
        INP             / AC(0-7) <- second character
        ADD CHR         / AC <- char2 + (char1 << 8)
        STA PCK         / packed word
        HLT
CTR,    DEC -8
CHR,    HEX 0
PCK,    HEX 0

E is 0 and the high bits of the character are 0, so 8 left rotations move the first character cleanly into bits 8-15. After ADD, the packed word PCK holds char1 in the high byte and char2 in the low byte.

Answer checked by Claude Sonnet · Oct 21, 2026

Test yourself · 2 MCQs

Loading…

  • 2014 AD Model · 4 marks

Calculate cache hit ratio and cache miss ratio if the content is found 85 times out of 120 times in cache memory.

Answer

Total accesses =120= 120, hits =85= 85, misses =120−85=35= 120 - 85 = 35.

Hit ratio=85120=0.708  (70.8%)\text{Hit ratio} = \frac{85}{120} = 0.708 \;(70.8\%)

Miss ratio=35120=0.292  (29.2%)=1−hit ratio\text{Miss ratio} = \frac{35}{120} = 0.292 \;(29.2\%) = 1 - \text{hit ratio}

Answer checked by Claude Sonnet · Oct 21, 2026

Test yourself · 2 MCQs

Loading…

  • 2014 AD Model · 5 marks

Why is IOP required? What influences the design of instruction format? Explain.

Answer

Why an IOP is required.

  • In programmed and interrupt-driven I/O, the CPU spends much of its time transferring data and checking device status. This wastes processor time.
  • An Input-Output Processor (IOP) is a separate processor with its own instruction set that handles I/O. It supports DMA, fetches I/O programs (channel programs) from memory, and transfers blocks of data between devices and memory.
  • The CPU only starts an I/O program and is interrupted when it ends. Meanwhile it runs other work, so CPU and I/O overlap and throughput rises.
  • The IOP also converts data formats, detects errors and controls many slow and fast devices of different types.

What influences the design of instruction format.

An instruction format is the layout of bits in an instruction: opcode, addressing mode and operand fields. Its design depends on:

  1. Number of instructions (operations). More operations need a longer opcode field.
  2. Number of addressing modes. A mode field is needed and the address fields change.
  3. Number of operands (address fields). Three-, two-, one- or zero-address formats, as in stack machines, affect program length and speed.
  4. Number of registers. More registers need more bits in the register field.
  5. Memory size and address range. Bigger memories need longer address fields.
  6. Word length, and fixed or variable length instructions. Fixed length is simple to decode, while variable length saves space.
  7. Ease of decoding and hardware cost. The control unit complexity, and compatibility with older machines, also matter.

Answer checked by Claude Sonnet · Oct 21, 2026

Test yourself · 2 MCQs

Loading…

  • 2014 AD Model · 5 marks

Does pipelining always give the better performance? Support your answer with example.

Answer

No. Pipelining gives the ideal speedup of about kk (the number of stages) only when the pipeline is kept full and the stages are balanced. It can give little or no gain, or even a loss, in these cases:

  1. Few tasks. The speedup is S=n tn(k+n−1) tpS = \dfrac{n\,t_n}{(k+n-1)\,t_p}. For a single task (n=1n=1) with k=5k=5 stages and tp=tn/5t_p = t_n/5, the time is 5tp=tn5t_p = t_n, so there is no gain. Extra latch (register) delay makes it slightly slower.
  2. Hazards. Structural, data and control hazards cause stalls and flushes. For example, with k=5k=5 and 20% branch instructions that each cost 3 stall cycles, the average CPI is 1+0.2×3=1.61 + 0.2\times 3 = 1.6. The speedup is only 5/1.6≈3.15/1.6 \approx 3.1 instead of 5.
  3. Unbalanced stages. The clock period is set by the slowest stage. If one stage takes 10 ns and the others 4 ns, every stage must run at 10 ns.
  4. Pipeline register overhead adds to every stage.

Hence pipelining improves throughput for long, regular instruction streams, but it does not always give better performance.

Answer checked by Claude Sonnet · Oct 21, 2026

Test yourself · 2 MCQs

Loading…

  • 2012 AD · 1 mark

How do you detect overflow while adding 2's complement data?

Answer

Overflow occurs when two numbers of the same sign are added and the result has the opposite sign. In hardware it is detected by V=Cn−1⊕CnV = C_{n-1} \oplus C_n: the carry into the sign bit is XORed with the carry out of the sign bit. If they differ, overflow has occurred.

Answer checked by Claude Sonnet · Oct 21, 2026

Test yourself · 2 MCQs

Loading…

  • 2012 AD · 1 mark

Define operating system

Answer

An operating system is system software that manages the hardware resources (CPU, memory, I/O devices and files). It provides a user interface and an environment in which application programs can run.

Answer checked by Claude Sonnet · Oct 21, 2026

Test yourself · 2 MCQs

Loading…

  • 2012 AD · 1 mark

Define cross bar switch.

Answer

A crossbar switch is an interconnection network with a matrix of crosspoint switches that connect each processor to each memory module. Any processor can be connected to any free memory module, and several non-conflicting transfers can take place at the same time.

Answer checked by Claude Sonnet · Oct 21, 2026

Test yourself · 2 MCQs

Loading…

  • 2012 AD · 1 mark

What is the use of daisy chaining?

Answer

Daisy chaining connects the interrupting devices in a serial chain, with the highest-priority device first. The interrupt acknowledge signal passes along the chain, so the highest-priority requesting device gets service first. It is a hardware method to decide priority among devices on a common interrupt line.

Answer checked by Claude Sonnet · Oct 21, 2026

Test yourself · 2 MCQs

Loading…

  • 2012 AD · 1 mark

Convert the 5 bit opcode to 9 bit microinstruction address using mapping procedure that provides eight consecutive microinstructions for each routine.

Answer

Eight consecutive microinstructions per routine need 3 low-order bits for the position within the routine. The 5 opcode bits go in front of these, and the leftmost bit of the 9-bit address is 0:

Opcode i4i3i2i1i0  ⟶  0  i4i3i2i1i0  0 0 0\text{Opcode } i_4 i_3 i_2 i_1 i_0 \;\longrightarrow\; 0\; i_4 i_3 i_2 i_1 i_0\; 0\,0\,0

For example, opcode 10110 maps to 010110000. Routines start at address 0, 8, 16 and so on, which allows 32 routines of 8 microinstructions each.

Answer checked by Claude Sonnet · Oct 21, 2026

Test yourself · 2 MCQs

Loading…

  • 2012 AD · 1 mark

What is the use of Control Address Register (CAR)?

Answer

The Control Address Register (CAR) holds the address of the next microinstruction to be read from the control memory. It is incremented, loaded with a branch address, or loaded by the mapping logic, so it sequences the microprogram.

Answer checked by Claude Sonnet · Oct 21, 2026

Test yourself · 2 MCQs

Loading…

  • 2012 AD · 1 mark

When can you say that set of instructions are complete?

Answer

A set of instructions is complete when it can be used to evaluate any computable function. In practice it needs instructions for arithmetic and logic, data transfer (load/store), program control (branch, jump, call) and input/output, so that any program can be written with it.

Answer checked by Claude Sonnet · Oct 21, 2026

Test yourself · 2 MCQs

Loading…

  • 2012 AD · 1 mark

Define bootstrap loader.

Answer

A bootstrap loader is a small program kept in ROM that runs when the computer is switched on. It loads the operating system from secondary storage into main memory and starts it.

Answer checked by Claude Sonnet · Oct 21, 2026

Test yourself · 2 MCQs

Loading…

  • 2012 AD · 1 mark

In which address mode, content of the program counter is added to the address part of the instruction in order to obtain the effective address?

Answer

Relative address mode. The effective address is EA=PC+address part of the instructionEA = PC + \text{address part of the instruction}.

Answer checked by Claude Sonnet · Oct 21, 2026

Test yourself · 2 MCQs

Loading…

  • 2012 AD · 3 marks

Define micro-program control unit. What is the advantage of using floating point representation?

Answer

Microprogrammed control unit. It is a control unit whose control signals are generated by a stored program of microinstructions held in a control memory (ROM). Each machine instruction is executed as a sequence of microinstructions, called a microprogram. A control address register (CAR), the control data register and sequencing logic select the next microinstruction.

Advantage of floating point representation. It can represent a much wider range of numbers, very large and very small, with a given number of bits. It does this by storing a mantissa and an exponent, so the position of the radix point is not fixed. It also keeps good precision for scientific computation.

Answer checked by Claude Sonnet · Oct 21, 2026

Test yourself · 2 MCQs

Loading…

  • 2012 AD · 3 marks

What is meant by pipelining? List the different conflicts that will arise in pipelining.

Answer

Pipelining. It is a technique of decomposing a sequential process into sub-operations (segments), each executed in a dedicated segment, so that several tasks or instructions overlap in execution. While one instruction is in one segment, other instructions are in other segments. This raises throughput.

Conflicts (hazards) in pipelining.

  1. Resource (structural) conflicts. Two segments need the same resource, such as memory, at the same time.
  2. Data dependency (data hazards). An instruction needs a result that a previous instruction has not yet produced.
  3. Branch difficulties (control hazards). Branch and interrupt instructions change the program counter, so the instructions already fetched must be discarded.

Answer checked by Claude Sonnet · Oct 21, 2026

Test yourself · 2 MCQs

Loading…

  • 2012 AD · 3 marks

Discuss instruction cycle of basic computer

Answer

The instruction cycle of the basic computer is repeated for every instruction. It has these phases:

  1. Fetch the instruction from memory.
  2. Decode the opcode.
  3. Read the effective address from memory if the instruction has an indirect address.
  4. Execute the instruction.

After execution, the cycle returns to step 1 for the next instruction, unless a HLT is executed.

Fetch and decode (timing signals T0T_0, T1T_1, T2T_2), when R′=1R'=1 (no interrupt):

R′T0:  AR←PCR'T_0:\; AR \leftarrow PC R′T1:  IR←M[AR],  PC←PC+1R'T_1:\; IR \leftarrow M[AR],\; PC \leftarrow PC+1 R′T2:  D0,…,D7←Decode IR(12-14),  AR←IR(0-11),  I←IR(15)R'T_2:\; D_0,\dots,D_7 \leftarrow \text{Decode } IR(12\text{-}14),\; AR \leftarrow IR(0\text{-}11),\; I \leftarrow IR(15)

Indirect address. For a memory-reference instruction with I=1I=1, at T3T_3: AR←M[AR]AR \leftarrow M[AR]. With I=0I=0, nothing is done at T3T_3.

Execute. For memory-reference instructions this takes place from T4T_4 onwards, for example for ADD: T4:DR←M[AR]T_4: DR \leftarrow M[AR] and T5:AC←AC+DR, E←Cout, SC←0T_5: AC \leftarrow AC + DR,\ E \leftarrow C_{out},\ SC \leftarrow 0. Register-reference (D7I′T3D_7 I'T_3) and I/O-reference (D7IT3D_7 I T_3) instructions execute at T3T_3.

At the end of execution the sequence counter is cleared (SC←0SC \leftarrow 0) and the next cycle starts. If an interrupt is pending (R=1R=1), the interrupt cycle runs instead.

Answer checked by Claude Sonnet · Oct 21, 2026

Test yourself · 2 MCQs

Loading…

  • 2012 AD · 3 marks

Differentiate between strobe and handshaking

Answer

BasisStrobeHandshaking
Control signalsOne control line, the strobeTwo control lines (request and acknowledge/ready)
Initiated byEither source or destinationSource and destination both take part
ConfirmationThe source does not know whether the data was received, or the destination whether valid data is on the busEach unit knows the other's state, since the signals are acknowledged
ReliabilityLess reliableMore reliable
Speed differencesNot handled wellHandled well, because a slow device can delay the transfer
HardwareSimpleSomewhat more complex

Answer checked by Claude Sonnet · Oct 21, 2026

Test yourself · 2 MCQs

Loading…

  • 2012 AD · 3 marks

Design MOD 4 UP/DOWN synchronous counter

Answer

A MOD-4 up/down counter counts 00, 01, 10, 11 and back to 00 when the control input X=0X = 0 (up). It counts 00, 11, 10, 01 and back to 00 when X=1X = 1 (down). It uses two T flip-flops, Q1Q_1 and Q0Q_0, driven by a common clock.

State table

XXPresent Q1Q0Q_1Q_0Next Q1Q0Q_1Q_0T1T_1T0T_0
0000101
0011011
0101101
0110011
1001111
1010001
1100111
1111001

Flip-flop input equations

T0=1T_0 = 1

T1=X′Q0+XQ0′=X⊕Q0T_1 = X'Q_0 + XQ_0' = X \oplus Q_0

Circuit. The Q0Q_0 flip-flop has T=1T=1 and toggles at every clock pulse. The Q1Q_1 flip-flop receives T1T_1 from an XOR gate with inputs XX and Q0Q_0. All clock pins are connected together, so it is synchronous. When X=0X=0, T1=Q0T_1 = Q_0 and the counter counts up. When X=1X=1, T1=Q0′T_1 = Q_0' and it counts down.

Answer checked by Claude Sonnet · Oct 21, 2026

Test yourself · 2 MCQs

Loading…

  • 2012 AD · 5 marks

Define cache coherence. Explain cache mapping techniques.

Answer

Cache coherence. In a multiprocessor system each processor has its own cache, so the same memory block may be held in several caches. If one processor modifies its copy, the other caches and main memory hold stale values. Cache coherence is the requirement that all copies of shared data stay consistent. It is maintained by write-through or write-invalidate/update (snooping) protocols, directory-based schemes, or by not caching shared writable data.

Cache mapping techniques. Mapping decides where a main memory block may be placed in the cache.

  1. Associative mapping. Any block can go in any cache line. The cache stores both the address and the data, and the CPU address is compared with all stored addresses at once. It is the most flexible and has the fewest conflicts, but needs costly associative (content-addressable) memory.
  2. Direct mapping. The address is split into tag and index. A block can go in only one line, given by line=block number mod number of lines\text{line} = \text{block number} \bmod \text{number of lines}. It is cheap and simple, but blocks that map to the same line conflict and can cause thrashing.
  3. Set-associative mapping. The cache is divided into sets of kk lines (k-way). A block maps to one set, given by block number mod number of sets\text{block number} \bmod \text{number of sets}, and can be in any line within that set. The tags in the set are compared. It is a compromise: the hit ratio is higher than direct mapping, with less hardware than fully associative mapping.

On a miss, a replacement algorithm (FIFO, LRU or random) chooses which block is replaced, in associative and set-associative caches.

Answer checked by Claude Sonnet · Oct 21, 2026

Test yourself · 2 MCQs

Loading…

  • 2012 AD · 5 marks

a. Calculate pipeline speed up if time taken to complete a task in conventional machine is 25ns. In pipelined machine, one task is divided into 5 segments and each sub-operation takes 4ns. Number of task to be completed is 100.
b. Why addressing modes are used? Write addressing modes available.

Answer

a. Non-pipelined time for n=100n=100 tasks: n tn=100×25=2500n\,t_n = 100\times25 = 2500 ns.

Pipelined time with k=5k=5 segments and tp=4t_p = 4 ns: (k+n−1) tp=(5+100−1)×4=416(k+n-1)\,t_p = (5+100-1)\times4 = 416 ns.

Speed-up S=2500416≈6.01\text{Speed-up } S = \frac{2500}{416} \approx 6.01

b. Why addressing modes are used.

  • They give programmers flexibility such as pointers, loop counters, indexing of arrays and relocation of programs.
  • They reduce the number of bits in the address field and the number of instructions in a program.

Addressing modes available:

  1. Implied mode: the operand is implied by the opcode, as with the accumulator.
  2. Immediate mode: the operand is in the instruction itself.
  3. Register mode: the operand is in a CPU register.
  4. Register indirect mode: the register holds the address of the operand.
  5. Autoincrement or autodecrement mode: register indirect, with the register incremented or decremented.
  6. Direct address mode: the address field gives the operand's address.
  7. Indirect address mode: the address field gives the location that holds the operand's address.
  8. Relative address mode: EA=PC+address fieldEA = PC + \text{address field}.
  9. Indexed addressing mode: EA=index register+address fieldEA = \text{index register} + \text{address field}.
  10. Base register addressing mode: EA=base register+address fieldEA = \text{base register} + \text{address field}.

Answer checked by Claude Sonnet · Oct 21, 2026

Test yourself · 2 MCQs

Loading…

  • 2012 AD · 5 marks

Explain the hardware implementation of addition / subtraction operation for signed 2's complement data. Perform the multiplication of -23 x 9 using sign magnitude data.

Answer

(a) Hardware for signed 2's complement addition/subtraction

Signed 2's complement numbers are added exactly like unsigned numbers, with the sign bit treated as an ordinary bit, so no separate sign logic is needed. The hardware consists of:

  • Registers AC and BR (n bits each) holding the two operands, plus a flip-flop V for overflow.
  • A parallel adder (chain of full adders) that adds AC and BR.
  • An XOR (complementer) stage on the BR input. A mode control line MM is XORed with every BR bit and also fed to the carry-in C0C_0 of the adder.

Operation:

  • M=0M = 0 (addition): BR passes unchanged, C0=0C_0 = 0, so AC←AC+BRAC \leftarrow AC + BR.
  • M=1M = 1 (subtraction): BR is complemented and C0=1C_0 = 1, so AC←AC+BR‾+1=AC−BRAC \leftarrow AC + \overline{BR} + 1 = AC - BR (2's complement of BR is added).

Overflow: it occurs when the carry into the sign position differs from the carry out of it, so V=Cn−1⊕CnV = C_{n-1} \oplus C_n. If V=1V = 1 the result is invalid.

Algorithm: (1) Add (or subtract) the two numbers using the adder; (2) check VV; if V=0V=0 the sum in AC is the answer, if V=1V=1 report overflow.

(b) Multiplication of −23×9-23 \times 9 (sign-magnitude)

Sign of multiplicand = 1 (negative), sign of multiplier = 0, so product sign =1⊕0=1= 1 \oplus 0 = 1 (negative).

Magnitudes: 23=10111223 = 10111_2, 9=0100129 = 01001_2 (5 bits each).

Shift-and-add: the multiplier bits (from LSB) are 1, 0, 0, 1, 0.

Multiplier bitActionPartial product
1add 1011100010111
0shift00010111
0shift00010111
1add 10111 shifted by 3 (10111000)11001111
0shift11001111

Magnitude of product =110011112=207= 11001111_2 = 207.

With the sign bit attached: 1 110011111\,11001111, which is −207-207. Check: −23×9=−207-23 \times 9 = -207.

Answer checked by Claude Sonnet · Oct 21, 2026

Test yourself · 2 MCQs

Loading…

  • 2014 AD · 1 mark

Write the major advantage of floating point representation.

Answer

Floating-point representation can represent a very wide range of numbers, from very small fractions to very large values, in a fixed number of bits, because the mantissa holds the precision and the exponent scales the value.

Answer checked by Claude Sonnet · Oct 21, 2026

Test yourself · 2 MCQs

Loading…

  • 2014 AD · 1 mark

What will be the solution of resource conflict pipeline hazard?

Answer

Resource (structural) conflicts are solved by duplicating hardware, for example separate instruction and data memories (or caches) so that instruction fetch and operand access can happen in the same clock cycle, and by adding more functional units or register ports. Where this is not possible, the pipeline is stalled (a bubble is inserted) until the resource is free.

Answer checked by Claude Sonnet · Oct 21, 2026

Test yourself · 2 MCQs

Loading…

  • 2014 AD · 1 mark

What is opcode?

Answer

The opcode (operation code) is the part of a machine instruction that specifies the operation to be performed, such as ADD, LOAD or STORE. The remaining fields give the operands or their addresses.

Answer checked by Claude Sonnet · Oct 21, 2026

Test yourself · 2 MCQs

Loading…

  • 2014 AD · 1 mark

Why the size of data register is 16 bit in Basic computer?

Answer

The basic computer has a 16-bit memory word, and the data register (DR) holds the operand read from memory (or to be written to it). Hence DR must be 16 bits wide to hold a complete word in one memory transfer. The same 16-bit width is used by AC, IR and the common bus.

Answer checked by Claude Sonnet · Oct 21, 2026

Test yourself · 2 MCQs

Loading…

  • 2014 AD · 1 mark

Why daisy chaining is required?

Answer

Daisy chaining is required to decide priority among several devices sharing a single interrupt request line. The interrupt acknowledge signal passes serially from device to device, starting from the highest priority, so the first requesting device blocks it from reaching the lower ones and places its vector address on the bus. This resolves which device is served first.

Answer checked by Claude Sonnet · Oct 21, 2026

Test yourself · 2 MCQs

Loading…

  • 2014 AD · 1 mark

Differentiate between strobe and handshaking.

Answer

In strobe control, a single control line (strobe) from either the source or the destination times the transfer, and the other unit gets no confirmation that data was received or sent. In handshaking, two control lines (e.g. data valid and data accepted) are used, so each unit acknowledges the other, which guarantees reliable transfer between units of different speeds.

Answer checked by Claude Sonnet · Oct 21, 2026

Test yourself · 2 MCQs

Loading…

  • 2014 AD · 1 mark

Define process.

Answer

A process is a program in execution. It includes the program code, its current activity (program counter and register contents), stack and data, and is the unit of work that the operating system schedules.

Answer checked by Claude Sonnet · Oct 21, 2026

Test yourself · 2 MCQs

Loading…

  • 2014 AD · 1 mark

Explain loosely coupled multiprocessor.

Answer

In a loosely coupled multiprocessor, each processor has its own local memory and I/O devices, and forms a computer module of its own. The processors communicate by message passing through a message-transfer system or communication network (e.g. a serial link or shared channel) rather than through a common memory. Interaction between processors is low, so it is suitable for tasks that can be divided into largely independent subtasks and is easily expandable.

Answer checked by Claude Sonnet · Oct 21, 2026

Test yourself · 2 MCQs

Loading…

  • 2014 AD · 3 marks

How hardwired CU is better than micro-programmed CU?

Answer

A hardwired control unit generates control signals using fixed logic circuits (gates, decoders, counters) instead of a stored microprogram.

  • Speed: It is faster, because signals are produced directly by logic gates with no control-memory fetch for each microinstruction.
  • Lower overhead: There is no control memory and no microinstruction sequencing, so the delay per step is smaller. This suits RISC machines with simple instruction sets.
  • Efficient with simple instruction sets: With few instructions the logic is small and economical.

Its drawback is that it is hard to modify or extend, whereas a micro-programmed unit can be changed by rewriting the microprogram.

Answer checked by Claude Sonnet · Oct 21, 2026

Test yourself · 2 MCQs

Loading…

  • 2014 AD · 3 marks

Explain common bus system of basic computer.

Answer

In the basic computer, the registers and memory are connected through a common bus of 16 lines, so that information can be moved from one component to another using one shared set of wires instead of separate paths between every pair.

  • The registers connected are AR, PC, DR, AC, IR, TR and memory (INPR feeds AC, OUTR is loaded from AC).
  • A bus selector (multiplexer) with select lines S2S1S0S_2S_1S_0 chooses which one register or memory drives the bus: 001 = AR, 010 = PC, 011 = DR, 100 = AC, 101 = IR, 110 = TR, 111 = memory.
  • AR, PC (12 bits) place their contents in the lower 12 bits of the bus (upper bits zero).
  • The register that must receive data has its LD (load) input enabled; INR and CLR are also used for increment and clear.
  • Only one register can drive the bus at a time. The adder and logic circuit takes input from AC and DR, and its output goes to AC (not through the bus).

Example: for AR←PCAR \leftarrow PC the selector chooses PC (S2S1S0=010S_2S_1S_0=010) and LD of AR is enabled.

Answer checked by Claude Sonnet · Oct 21, 2026

Test yourself · 2 MCQs

Loading…

  • 2014 AD · 3 marks

What is instruction pipeline? Explain.

Answer

Instruction pipelining is a technique in which the execution of an instruction is divided into several stages (segments), such as fetch, decode, operand fetch and execute, and several instructions are processed concurrently, each in a different stage. Like an assembly line, while one instruction is executing, the next is being decoded and the one after is being fetched.

With kk stages and clock period tpt_p, nn instructions need (k+n−1)tp(k + n - 1)t_p time instead of nktpn k t_p, giving speedup

S=nkk+n−1→k as n→∞.S = \frac{n k}{k + n - 1} \to k \text{ as } n \to \infty.

Pipelining raises throughput, but it can be disturbed by hazards: structural (resource), data and control (branch) hazards.

Answer checked by Claude Sonnet · Oct 21, 2026

Test yourself · 2 MCQs

Loading…

  • 2014 AD · 3 marks

Explain cache mapping techniques.

Answer

Cache mapping determines where a block of main memory may be placed in the cache. The three techniques are:

  1. Direct mapping: Each main memory block maps to exactly one cache line, given by i=j mod mi = j \bmod m (j = block number, m = number of cache lines). The address is divided into tag, index and word fields. It is simple and cheap, but two blocks with the same index keep replacing each other (conflict misses).
  2. Associative (fully associative) mapping: A block can be placed in any cache line. The address is split into tag and word; the tag is compared with all stored tags in parallel using associative memory. It is flexible with the best hit ratio, but needs costly comparison hardware.
  3. Set-associative mapping: The cache is divided into sets of kk lines; a block maps to one set (set =j mod = j \bmod number of sets) and may occupy any line of that set. The address has tag, set and word fields. It is a compromise between the two, reducing conflict misses at moderate cost.

When the cache is full, a replacement policy (FIFO, LRU, random) selects the block to remove.

Answer checked by Claude Sonnet · Oct 21, 2026

Test yourself · 2 MCQs

Loading…

  • 2014 AD · 3 marks

Explain Cache coherence.

Answer

In a multiprocessor in which each processor has its own cache, the same memory block may be copied into several caches. If one processor writes to its copy, the other caches and main memory hold stale values, so the processors see inconsistent data. This is the cache coherence problem.

Coherence means that all processors always see the most recent value of a shared item. Solutions:

  • Write-through / write-update: a write is also sent to memory and to the other caches so their copies are updated.
  • Write-invalidate (snooping): each cache watches (snoops) the bus; when one processor writes, the copies in other caches are marked invalid.
  • Directory-based protocols: a central directory tracks which caches hold each block.
  • Non-cacheable shared data: shared writable data are kept only in main memory (not cached), or hardware/software marks them so.

Answer checked by Claude Sonnet · Oct 21, 2026

Test yourself · 2 MCQs

Loading…

  • 2014 AD · 5 marks

Differentiate between combinational and sequential circuit. Draw circuit diagram for each of them.

Answer

Differences

Combinational circuitSequential circuit
Output depends only on the present inputsOutput depends on present inputs and the past state (stored information)
Has no memory elementHas memory elements (flip-flops)
No clock is requiredUsually clocked
Faster and simpler to designSlower and more complex
Examples: adder, multiplexer, decoderExamples: counter, register, flip-flop

Circuit diagrams

Combinational: half adder

 A ──┬──────────┐
     │        [XOR]──── Sum = A ⊕ B
 B ──┼──┬───────┘
     │  │
     └──┼──[AND]────── Carry = A·B
        └─────┘

Sequential: SR flip-flop with NOR gates (feedback gives memory)

 R ──[NOR]──┬──── Q
        ▲   │
        │   └───────┐
        └───────┐   │
 S ──[NOR]──┬───┘   │
        ▲   └────── Q'
        └───────────┘

Each NOR gate output is fed back to the input of the other, so the circuit holds its state; this feedback loop is what makes it sequential, while the half adder has no feedback.

Answer checked by Claude Sonnet · Oct 21, 2026

Test yourself · 2 MCQs

Loading…

  • 2014 AD · 5 marks

What do you mean by addressing mode? Explain some of the available addressing mode.

Answer

The addressing mode specifies how the address field of an instruction is interpreted to find the operand (effective address). It gives flexibility, such as pointers, loop counters, indexing of arrays and program relocation, and reduces instruction length.

Common modes:

  1. Implied mode: the operand is implied by the instruction, e.g. CMA complements AC.
  2. Immediate mode: the operand is in the instruction itself, e.g. LDA #5. Fast, but the constant is fixed.
  3. Register mode: the operand is in a register named in the instruction.
  4. Register indirect mode: the register holds the address of the operand in memory; EA=(R)EA = (R).
  5. Autoincrement/autodecrement mode: like register indirect, but the register is incremented or decremented after/before access.
  6. Direct address mode: the address field is the effective address, EA=AEA = A.
  7. Indirect address mode: the address field gives the location that holds the operand's address, EA=M[A]EA = M[A].
  8. Relative address mode: EA=A+PCEA = A + PC; used for branches and relocatable code.
  9. Indexed addressing mode: EA=A+(XR)EA = A + (XR); used for arrays.
  10. Base register addressing mode: EA=A+(BR)EA = A + (BR); used for relocation.

Answer checked by Claude Sonnet · Oct 21, 2026

Test yourself · 2 MCQs

Loading…

  • 2014 AD · 5 marks

Multiply (-13) X (+40) using Booth multiplication algorithm.

Answer

Use 7-bit registers (40 needs 7 bits as a signed number).

Multiplicand M=−13=1110011M = -13 = 1110011, so −M=+13=0001101-M = +13 = 0001101. Multiplier QR=+40=0101000QR = +40 = 0101000. Initially AC=0000000AC = 0000000, Q−1=0Q_{-1}=0, SC = 7.

Rule: Q0Q−1=10Q_0Q_{-1} = 10: AC←AC−MAC \leftarrow AC - M; 0101: AC←AC+MAC \leftarrow AC + M; 0000 or 1111: no operation. Then arithmetic shift right of AC, QR, Q−1Q_{-1}.

StepQ0Q−1Q_0Q_{-1}OperationACQRQ−1Q_{-1}
Initial000000001010000
100ashr000000000101000
200ashr000000000010100
300ashr000000000001010
410AC−MAC-M = 0001101, ashr000011010000101
501AC+MAC+M = 1111001, ashr111110011000010
610AC−MAC-M = 0001001, ashr000010011100001
701AC+MAC+M = 1110111, ashr111101111110000

Result AC QR=1111011 1111000AC\,QR = 1111011\ 1111000 (14 bits). It is negative; its 2's complement is 00001000001000=52000001000001000 = 520.

(−13)×(+40)=−520(-13)\times(+40) = -520

Answer checked by Claude Sonnet · Oct 21, 2026

Test yourself · 2 MCQs

Loading…

  • 2015 AD · 1 mark

Define the term normalization with respect to a floating point numbers.

Answer

A floating-point number is normalized when the most significant digit (bit) of the mantissa is non-zero, i.e. there are no leading zeros (e.g. mantissa 0.1xxx0.1xxx in binary). Un-normalized numbers are shifted left, with the exponent decreased accordingly, to obtain maximum precision.

Answer checked by Claude Sonnet · Oct 21, 2026

Test yourself · 2 MCQs

Loading…

  • 2015 AD · 1 mark

Write down the symbolic designation of a shift micro operation where the shifting is carried out without loss of information.

Answer

The shift without loss of information is the circular shift (rotate) micro-operation. Circular shift right is R←cir RR \leftarrow cir\ R (shr with end-around), and circular shift left is R←cil RR \leftarrow cil\ R. In these, the bit shifted out of one end is re-inserted at the other end.

Answer checked by Claude Sonnet · Oct 21, 2026

Test yourself · 2 MCQs

Loading…

  • 2015 AD · 1 mark

How I/O instruction is identified in a basic computer?

Answer

In the basic computer, the I/O instruction is identified by opcode =111= 111 and the mode bit I=1I = 1 (bit 15 of the instruction). The register-reference instructions have the same opcode 111 but I=0I = 0. In an I/O instruction, bits 0-11 select the specific operation (INP, OUT, SKI, SKO, ION, IOF).

Answer checked by Claude Sonnet · Oct 21, 2026

Test yourself · 2 MCQs

Loading…

  • 2015 AD · 1 mark

Make distinction between RISC and CISC architecture.

Answer

RISCCISC
Small set of simple instructionsLarge set of complex instructions
Fixed-length instructions, one cycle eachVariable-length instructions, many cycles
Hardwired control unitMicro-programmed control unit
Load/store architecture, many registersMemory operands allowed in many instructions, fewer registers
Few addressing modes; pipelining is efficientMany addressing modes; pipelining harder

Answer checked by Claude Sonnet · Oct 21, 2026

Test yourself · 2 MCQs

Loading…

  • 2015 AD · 1 mark

Write down the uses of sequencer in a microprogrammed control organization.

Answer

In a microprogrammed control unit, the microprogram sequencer (next-address generator) determines the address of the next microinstruction to be read from control memory. It is used to:

  • increment the control address register (CAR) for the next sequential microinstruction;
  • perform branches (conditional and unconditional) by loading an address from the microinstruction according to status bits;
  • map the opcode of the instruction to the starting address of its microroutine;
  • handle subroutine call and return of microroutines (using a register/stack).

Answer checked by Claude Sonnet · Oct 21, 2026

Test yourself · 2 MCQs

Loading…

  • 2015 AD · 1 mark

How is effective address calculated in indexed register addressing mode?

Answer

In indexed addressing mode, the effective address is the sum of the address part of the instruction and the content of the index register:

EA=A+(XR)EA = A + (XR)

where AA is the address field and XRXR is the index register.

Answer checked by Claude Sonnet · Oct 21, 2026

Test yourself · 2 MCQs

Loading…

  • 2015 AD · 1 mark

List solutions to control hazards.

Answer

Solutions to control (branch) hazards:

  • Pipeline stalling (inserting bubbles until the branch is resolved).
  • Prefetching the branch target instruction (and the fall-through instruction), or using a branch target buffer.
  • Branch prediction (static or dynamic).
  • Delayed branch (rearranging instructions so useful ones fill the delay slots).
  • Early branch resolution by adding hardware in the decode stage.

Answer checked by Claude Sonnet · Oct 21, 2026

Test yourself · 2 MCQs

Loading…

  • 2015 AD · 1 mark

What is the disadvantage of programmed I/O?

Answer

In programmed I/O the CPU must continuously poll the device status flag in a loop until the device is ready, so it is kept busy waiting and wastes CPU time, especially with slow devices. The CPU cannot do other useful work during the transfer.

Answer checked by Claude Sonnet · Oct 21, 2026

Test yourself · 2 MCQs

Loading…

  • 2015 AD · 1 mark

Differentiate between logical address and virtual address.

Answer

A logical address is the address generated by the CPU (program) as seen in the program's own address space, which the memory management hardware maps to a physical address. A virtual address is an address in the virtual memory address space, which can be larger than the physical memory; it is mapped by the memory management unit (page or segment tables) to a physical address, with parts of it residing on secondary storage. In many systems the two terms are used almost interchangeably, but virtual address emphasises the extended space supported by paging or swapping.

Answer checked by Claude Sonnet · Oct 21, 2026

Test yourself · 2 MCQs

Loading…

  • 2015 AD · 1 mark

Define associative memory.

Answer

Associative memory is a memory unit accessed by the content of the stored data rather than by a specific address (content addressable memory). A word is located by comparing the given argument with all stored words in parallel.

Answer checked by Claude Sonnet · Oct 21, 2026

Test yourself · 2 MCQs

Loading…

  • 2015 AD · 4 marks

Write a program to take two integers and display them.

Answer

#include <stdio.h>

int main(void) {
    int a, b;

    printf("Enter two integers: ");
    scanf("%d %d", &a, &b);

    printf("First integer  = %d\n", a);
    printf("Second integer = %d\n", b);

    return 0;
}

The program reads two integers with scanf and prints them with printf. For example, input 7 12 prints First integer = 7 and Second integer = 12.

Answer checked by Claude Sonnet · Oct 21, 2026

Test yourself · 2 MCQs

Loading…

  • 2015 AD · 4 marks

Time taken to complete a task in conventional machine is 45ns. In pipelined machine, one task is divided into 5 segments and each sub-operation takes 10ns. Calculate pipeline speed up for 50 tasks and infinite tasks.

Answer

Given: non-pipelined task time tn=45t_n = 45 ns, number of segments k=5k = 5, clock period (each sub-operation) tp=10t_p = 10 ns.

Speedup S=n tn(k+n−1) tpS = \dfrac{n\,t_n}{(k + n - 1)\,t_p}

For n=50n = 50 tasks:

S=50×45(5+50−1)×10=2250540≈4.17S = \frac{50 \times 45}{(5 + 50 - 1)\times 10} = \frac{2250}{540} \approx 4.17

For infinite tasks (n→∞n \to \infty):

S=tntp=4510=4.5S = \frac{t_n}{t_p} = \frac{45}{10} = 4.5

Answer checked by Claude Sonnet · Oct 21, 2026

Test yourself · 2 MCQs

Loading…

  • 2015 AD · 4 marks

Consider the following memory and the instruction LDA 250: (memory location 250 holds 511, location 325 holds 255, location 511 holds 432; register R holds 250 and PC holds 352.) Write the value loaded into AC when the addressing mode is a) Indirect b) Register indirect c) Immediate d) Direct

Answer

Memory: M[250]=511M[250] = 511, M[325]=255M[325] = 255, M[511]=432M[511] = 432; R=250R = 250; PC=352PC = 352. Instruction: LDA 250 (address field = 250).

(a) Indirect: EA=M[250]=511EA = M[250] = 511, operand =M[511]=432= M[511] = 432. AC = 432.

(b) Register indirect: EA=R=250EA = R = 250, operand =M[250]=511= M[250] = 511. AC = 511.

(c) Immediate: operand is the address field itself. AC = 250.

(d) Direct: EA=250EA = 250, operand =M[250]=511= M[250] = 511. AC = 511.

Answer checked by Claude Sonnet · Oct 21, 2026

Test yourself · 2 MCQs

Loading…

  • 2015 AD · 4 marks

Multiply +15 by -5 using booth algorithm.

Answer

Use 5-bit registers. Multiplicand M=+15=01111M = +15 = 01111, so −M=10001-M = 10001. Multiplier QR=−5=11011QR = -5 = 11011. Initially AC=00000AC = 00000, Q−1=0Q_{-1} = 0, SC = 5.

StepQ0Q−1Q_0Q_{-1}OperationACQRQ−1Q_{-1}
Initial00000110110
110AC−MAC-M = 10001, ashr11000111011
211ashr11100011101
301AC+MAC+M = 01011, ashr00101101110
410AC−MAC-M = 10110, ashr11011010111
511ashr11101101011

Result AC QR=11101 10101AC\,QR = 11101\ 10101 (10 bits). Negative; 2's complement =0001001011=75= 0001001011 = 75.

(+15)×(−5)=−75(+15)\times(-5) = -75

Answer checked by Claude Sonnet · Oct 21, 2026

Test yourself · 2 MCQs

Loading…

  • 2015 AD · 5 marks

Explain how data is transferred using handshaking methods? Explain interrupt cycle of Basic computer.

Answer

(a) Data transfer by handshaking

Handshaking uses two control lines between the source and destination units, so each transfer is acknowledged.

Source-initiated transfer:

  1. The source places data on the data bus and enables data valid.
  2. The destination accepts the data from the bus and enables data accepted.
  3. The source sees data accepted, disables data valid and removes the data.
  4. The destination disables data accepted, ready for the next transfer.

Destination-initiated transfer: the destination first activates ready for data; the source then places data on the bus and enables data valid; the destination accepts the data and disables ready for data; the source disables data valid and the cycle is ready to repeat.

This works for units of different speeds because each side proceeds only after the other's acknowledgement.

(b) Interrupt cycle of the basic computer

The interrupt flip-flop R is set (when IEN = 1 and an input or output flag FGI/FGO is 1). At the end of the execute phase, if R=1R = 1 the computer goes to the interrupt cycle instead of fetching the next instruction:

  1. RT0RT_0: AR←0, TR←PCAR \leftarrow 0,\ TR \leftarrow PC (save return address)
  2. RT1RT_1: M[AR]←TR, PC←0M[AR] \leftarrow TR,\ PC \leftarrow 0 (store the return address at location 0)
  3. RT2RT_2: PC←PC+1, IEN←0, R←0, SC←0PC \leftarrow PC + 1,\ IEN \leftarrow 0,\ R \leftarrow 0,\ SC \leftarrow 0

So the return address is saved in memory location 0, control branches to location 1 (the interrupt service routine starts there), further interrupts are disabled, and the cycle is reset. The routine ends with ION and an indirect branch (BUN 0 I) back to the saved address.

Answer checked by Claude Sonnet · Oct 21, 2026

Test yourself · 2 MCQs

Loading…

  • 2015 AD · 5 marks

Explain any two interconnection structures for a multi-processor. Explain cache mapping techniques.

Answer

(a) Interconnection structures for multiprocessors

  1. Time-shared common bus: All processors, memory and I/O modules are connected to one shared bus. Only one transfer can take place at a time, so a bus arbitration mechanism is needed. It is simple, cheap and easy to expand, but the single bus limits throughput and a bus failure stops the system.
  2. Crossbar switch: There is a switch at each crosspoint of a matrix with memory modules along one axis and processors along the other. Any processor can connect to any free memory module, and several transfers occur simultaneously, giving high bandwidth. Conflicts happen only if two processors want the same module. The disadvantage is the high hardware cost, which grows as n×mn \times m.

Others include multiport memory, multistage switching network and hypercube.

(b) Cache mapping techniques

  • Direct mapping: block jj goes to line j mod mj \bmod m; address = tag + index + word. Simple, but conflict misses.
  • Fully associative mapping: a block can go to any line; address = tag + word; all tags are compared in parallel. Flexible and a high hit ratio, but expensive.
  • Set-associative mapping: the cache is divided into sets; a block maps to a fixed set and can occupy any line in it; address = tag + set + word. A balance between cost and performance.

Replacement algorithms (FIFO, LRU) decide which block is replaced when the cache is full.

Answer checked by Claude Sonnet · Oct 21, 2026

Test yourself · 2 MCQs

Loading…

  • 2016 AD · 1 mark

What is the importance of complement in digital computers?

Answer

Complements simplify arithmetic in digital computers. Subtraction can be done by adding the complement of the subtrahend, so the same adder circuit performs both addition and subtraction, reducing hardware. Complements are also used for representing negative numbers (2's complement) and for logical operations.

Answer checked by Claude Sonnet · Oct 21, 2026

Test yourself · 2 MCQs

Loading…

  • 2016 AD · 1 mark

What is the purpose of location counter in assembler?

Answer

The location counter (LC) keeps track of the address of the instruction or data currently being assembled. The assembler increments it as each line is processed, and uses its value to assign addresses to labels in the symbol table; it is set by the ORG pseudo-instruction.

Answer checked by Claude Sonnet · Oct 21, 2026

Test yourself · 2 MCQs

Loading…

  • 2016 AD · 1 mark

How many bits are required to address 4096 bytes of memory?

Answer

4096=2124096 = 2^{12} bytes, so 12 bits are required.

Answer checked by Claude Sonnet · Oct 21, 2026

Test yourself · 2 MCQs

Loading…

  • 2016 AD · 1 mark

What is the meaning of dynamic micro programming?

Answer

Dynamic microprogramming means the control memory is writable (RAM or other loadable memory), so the microprogram can be changed or reloaded at run time. This lets the same hardware emulate different instruction sets, unlike static microprogramming where the control memory is a fixed ROM.

Answer checked by Claude Sonnet · Oct 21, 2026

Test yourself · 2 MCQs

Loading…

  • 2016 AD · 1 mark

What is the purpose of strobe pulse in asynchronous data transfer?

Answer

In asynchronous data transfer, the strobe pulse is a control signal sent by one unit to tell the other unit when to transfer data. The source (or destination) activates it to indicate that valid data is on the bus, so the receiving unit knows the exact moment to accept the data.

Answer checked by Claude Sonnet · Oct 21, 2026

Test yourself · 2 MCQs

Loading…

  • 2016 AD · 1 mark

Write the major difficulties that cause the instruction pipeline to deviate from normal operation.

Answer

The instruction pipeline deviates from normal operation because of three types of hazards.

  • Resource (structural) conflicts: two segments need the same resource, such as memory, in the same clock cycle.
  • Data dependency: an instruction needs the result of a previous instruction that is not yet available.
  • Branch difficulties: branch and interrupt instructions change the program counter, so the instructions already fetched must be discarded.

Answer checked by Claude Sonnet · Oct 21, 2026

Test yourself · 2 MCQs

Loading…

  • 2016 AD · 1 mark

What is the principle behind the implementation of cache memory?

Answer

Cache memory is based on the principle of locality of reference. Programs tend to access the same or nearby memory locations repeatedly (temporal and spatial locality), so keeping those active words in a small, fast memory makes the average access time close to that of the cache.

Answer checked by Claude Sonnet · Oct 21, 2026

Test yourself · 2 MCQs

Loading…

  • 2016 AD · 1 mark

What is critical selection?

Answer

A critical section (the question's "critical selection") is the part of a program in which a process accesses a shared resource or shared data. Only one process may execute it at a time, so that concurrent access does not give inconsistent results.

Answer checked by Claude Sonnet · Oct 21, 2026

Test yourself · 2 MCQs

Loading…

  • 2016 AD · 4 marks

Write a program loop, using a pointer and counter, that clears the content of hexadecimal locations 500 through 5FF to 0.

Answer

There are 5FF−500+1=10016=2565FF - 500 + 1 = 100_{16} = 256 locations, so the counter is initialised to −256-256. In the basic computer, a pointer location holds the address and indirect addressing (I) is used to reach the memory word.

        ORG 100
LOP,    CLA            / AC = 0
        STA PTR I      / store 0 at the address held in PTR
        ISZ PTR        / PTR = PTR + 1 (next location)
        ISZ CNT        / CNT = CNT + 1, skip next instruction when zero
        BUN LOP        / repeat until all 256 words are cleared
        HLT
PTR,    HEX 500        / pointer to the first location
CNT,    DEC -256       / counter for 256 locations

The loop runs 256 times. When CNT becomes 0, ISZ CNT skips BUN LOP and the computer halts, with locations 500 to 5FF all set to 0.

Answer checked by Claude Sonnet · Oct 21, 2026

Test yourself · 2 MCQs

Loading…

  • 2016 AD · 4 marks

Consider the following figure: PC = 300, R1 = 500 (memory contents shown in a figure in the original paper, with addresses 300, 450 and 500). What is the value in AC if the instruction is LDA 300 if the modes are:
i. Direct addressing\nii. Immediate\niii. Indirect addressing\niv. Register indirect if LDA (R1) is used

Answer

The instruction LDA 300 is stored at address PC−1=299PC - 1 = 299 (PC already points to the next instruction, 300), and its address field is 300. The effective address and the value loaded depend on the mode. Let M[x]M[x] be the memory word at address xx in the figure.

i. Direct addressing: effective address EA = 300, so AC=M[300]AC = M[300].

ii. Immediate: the operand is the address field itself, so AC=300AC = 300.

iii. Indirect addressing: EA = M[300]M[300] (the pointer stored at 300, which leads to location 450 in the figure), so AC=M[M[300]]=M[450]AC = M[M[300]] = M[450].

iv. Register indirect (LDA (R1)): R1 = 500 holds the address of the operand, so EA = 500 and AC=M[500]AC = M[500].

Direct needs one memory reference for the operand, indirect needs two, immediate needs none, and register indirect needs one.

Answer checked by Claude Sonnet · Oct 21, 2026

Test yourself · 2 MCQs

Loading…

  • 2016 AD · 4 marks

What is associative memory? Given a cache memory with access time 200ns and RAM with access time 2000 ns, if hit ratio is 90% calculate the average memory access time.

Answer

Associative memory (content-addressable memory, CAM) is a memory that is accessed by the content of the data rather than by an address. A search word is compared with all stored words simultaneously, and the matching words are returned. It is very fast but costly, and it is used in cache tags and page tables.

Average access time. Given tc=200t_c = 200 ns, tm=2000t_m = 2000 ns and hit ratio h=0.9h = 0.9:

tavg=h tc+(1−h) tm=0.9(200)+0.1(2000)=180+200=380 nst_{avg} = h\,t_c + (1-h)\,t_m = 0.9(200) + 0.1(2000) = 180 + 200 = 380 \text{ ns}

(If main memory is accessed only after the cache lookup fails, tavg=tc+(1−h)tm=200+200=400t_{avg} = t_c + (1-h)t_m = 200 + 200 = 400 ns. The usual textbook formula above gives 380 ns.)

Answer checked by Claude Sonnet · Oct 21, 2026

Test yourself · 2 MCQs

Loading…

  • 2016 AD · 5 marks

What is the advantage of common bus system? Explain with diagram. What is vector processing?

Answer

Common bus system. In a common bus system, a single set of lines is shared to transfer information between the registers, memory and other units. Selection circuitry (multiplexers or three-state buffers) chooses which register drives the bus, and the bus carries the data to the destination register whose load input is enabled.

Advantages:

  • It needs far fewer wires and less hardware than separate paths between every pair of registers, so it is cheaper and simpler.
  • It is easy to expand, since a new register or device is added by connecting it to the bus.
  • Control is simple, because only the select and load signals decide the transfer.
  • The only cost is that one transfer can take place at a time on the bus.

Diagram (registers feeding a bus through a multiplexer):

 AR   PC   DR   AC   IR   TR   Memory
  |    |    |    |    |    |     |
  +----+----+----+----+----+-----+
            |   COMMON BUS (16 lines)
  +----+----+----+----+----+-----+
  |    |    |    |    |    |     |
 LD   LD   LD   LD   LD   LD    Write
          (S2 S1 S0 select the source on the bus)

Vector processing. Vector processing is the execution of a single instruction on whole arrays (vectors) of data, with many elements processed using pipelined arithmetic units or several processing elements. It avoids the loop overhead of scalar processing, and it is used for scientific work such as matrix computation, weather forecasting and image processing, where the same operation is applied to a large set of data.

Answer checked by Claude Sonnet · Oct 21, 2026

Test yourself · 2 MCQs

Loading…

  • 2016 AD · 5 marks

How are priorities of interrupt handled? What do you mean by instruction set completeness?

Answer

Interrupt priority. When several devices raise interrupts at the same time, priority decides which is served first. There are two ways.

1. Software (polling): one common branch address is used for all interrupts. The routine polls the devices in order, so the first device polled has the highest priority. It is simple, but slow, since many devices may be tested before the requester is found.

2. Hardware:

  • Daisy chaining (serial priority): the devices are connected in series by a priority chain. The interrupt acknowledge signal passes through each device in turn, and the first device with a pending request blocks the signal and puts its vector address on the bus. The device nearest to the CPU has the highest priority.
  • Parallel priority: each device has a bit in an interrupt register, with a mask register to enable or disable each source. A priority encoder gives the vector address of the highest-priority unmasked request.

Instruction set completeness. An instruction set is complete if it can be used to evaluate any computable function. It must contain instructions in these classes:

  • arithmetic, logical and shift instructions for computation,
  • data transfer instructions (move data between memory and registers),
  • program control instructions (test, branch, call, return) for decisions and loops,
  • input/output instructions for communication with the outside.

Answer checked by Claude Sonnet · Oct 21, 2026

Test yourself · 2 MCQs

Loading…

  • 2017 AD · 1 mark

What the advantage is of normalizes floating point number?

Answer

A normalized floating-point number has a non-zero leading digit in its fraction (mantissa). This uses the mantissa bits for the maximum precision and gives each number a unique representation, which also makes comparison and arithmetic simpler.

Answer checked by Claude Sonnet · Oct 21, 2026

Test yourself · 2 MCQs

Loading…

  • 2017 AD · 1 mark

Why control data register in micro-programmed control organization is called pipeline register?

Answer

The control data register holds the microinstruction fetched from control memory while it is executed. The next microinstruction is read and the next address is computed at the same time as the present one executes. This overlapping of fetch and execute is pipelining, so the register is called the pipeline register.

Answer checked by Claude Sonnet · Oct 21, 2026

Test yourself · 2 MCQs

Loading…

  • 2017 AD · 1 mark

What are the different techniques used to achieve parallel processing?

Answer

Parallel processing is achieved by:

  • Pipelining (overlapping the segments of an instruction or arithmetic operation),
  • Vector (array) processing,
  • Multiple functional units in the CPU,
  • Multiprocessing (several CPUs sharing memory, such as multiprocessor systems),
  • Multicomputers/distributed systems, and
  • Overlapping CPU and I/O operations.

Answer checked by Claude Sonnet · Oct 21, 2026

Test yourself · 2 MCQs

Loading…

  • 2017 AD · 1 mark

Why peripherals are connected with computer through interface?

Answer

Peripherals differ from the CPU in speed, data format, word length and signal levels. An interface is placed between them to convert signals and formats, synchronise the different speeds, and provide the control and status information and the address decoding. Without it the CPU could not communicate correctly with the devices.

Answer checked by Claude Sonnet · Oct 21, 2026

Test yourself · 2 MCQs

Loading…

  • 2017 AD · 1 mark

Why hierarchy of memory is maintained?

Answer

No single memory is at once fast, large and cheap. A hierarchy (registers, cache, main memory, secondary storage) combines a small, fast memory for the active data with larger, slower and cheaper memories. Because of locality of reference, the system gives an average access time close to the fastest level at a cost close to the cheapest level.

Answer checked by Claude Sonnet · Oct 21, 2026

Test yourself · 2 MCQs

Loading…

  • 2017 AD · 1 mark

Differentiate between vector and array processor.

Answer

A vector processor has one (or a few) deeply pipelined functional units that process the elements of a vector one after another in a pipelined fashion, with the elements streamed from vector registers. An array processor has many identical processing elements (ALUs) that operate in parallel on different elements of the array at the same time under a single control unit (SIMD), so it needs more hardware.

Answer checked by Claude Sonnet · Oct 21, 2026

Test yourself · 2 MCQs

Loading…

  • 2017 AD · 4 marks

Perform the arithmetic operation (+33) + (+48) and (-33) + (-48) with binary numbers in signed 2's complement representation. Use seven bits to accommodate each number together with sign. Show that overflow occurs in both cases.

Answer

Use 7 bits including the sign bit, so the range is −64-64 to +63+63.

Case 1: (+33) + (+48)

+33=0100001+33 = 0100001 and +48=0110000+48 = 0110000

  0100001
+ 0110000
---------
  1010001

The carry into the sign bit is 1 and the carry out of the sign bit is 0. These differ, so overflow occurs. Two positive numbers have given a negative-looking result (sign bit 1), and the true sum +81+81 is outside the range −64-64 to +63+63.

Case 2: (-33) + (-48)

−33-33 in 2's complement: 0100001→1011110+1=10111110100001 \to 1011110 + 1 = 1011111

−48-48 in 2's complement: 0110000→1001111+1=10100000110000 \to 1001111 + 1 = 1010000

  1011111
+ 1010000
---------
 10101111

Dropping the carry out gives 01011110101111. The carry into the sign bit is 0 and the carry out of the sign bit is 1, which differ, so overflow occurs. Two negative numbers have given a positive-looking result (sign bit 0), and the true sum −81-81 is outside the range.

In both cases the sign of the result is wrong, which shows overflow.

Answer checked by Claude Sonnet · Oct 21, 2026

Test yourself · 2 MCQs

Loading…

  • 2017 AD · 4 marks

Explain how instruction is executed in basic computer with necessary flow chart.

Answer

Every instruction in the basic computer goes through an instruction cycle that is repeated until the computer halts. It has these phases:

  1. Fetch the instruction from memory.
  2. Decode the operation code.
  3. Read the effective address from memory if the instruction has an indirect address.
  4. Execute the instruction.

Fetch (timing signals T0, T1): T0:AR←PCT_0: AR \leftarrow PC T1:IR←M[AR],  PC←PC+1T_1: IR \leftarrow M[AR],\; PC \leftarrow PC + 1

Decode (T2): T2:D0…D7←decode IR(12-14),  AR←IR(0-11),  I←IR(15)T_2: D_0 \ldots D_7 \leftarrow \text{decode } IR(12\text{-}14),\; AR \leftarrow IR(0\text{-}11),\; I \leftarrow IR(15)

After decoding, the type of instruction is found from D7D_7 and II:

  • D7=1,  I=1D_7 = 1,\; I = 1: input-output instruction, executed at once.
  • D7=1,  I=0D_7 = 1,\; I = 0: register-reference instruction, executed at once.
  • D7=0,  I=1D_7 = 0,\; I = 1: memory-reference instruction with indirect address, so AR←M[AR]AR \leftarrow M[AR] at T3T_3.
  • D7=0,  I=0D_7 = 0,\; I = 0: memory-reference instruction with direct address, so nothing is done at T3T_3.

Then the memory-reference instruction is executed from T4T_4 onwards, and the sequence counter is cleared (SC←0SC \leftarrow 0) so that the next instruction is fetched at T0T_0.

Flow chart:

        Start, SC <- 0
              |
        T0: AR <- PC
              |
        T1: IR <- M[AR], PC <- PC + 1
              |
        T2: Decode IR(12-14), AR <- IR(0-11), I <- IR(15)
              |
          D7 = 1 ?
         /          \
      (no)          (yes)
  memory-ref        I = 1 ? --yes--> Input-output: execute at T3
       |               | no
    I = 1 ?        Register-ref: execute at T3
    /     \               |
 (yes)   (no)             |
T3: AR<-M[AR]  T3: nothing |
    \     /                |
  Execute memory-ref (T4...)|
         \                 /
          SC <- 0, next instruction

Answer checked by Claude Sonnet · Oct 21, 2026

Test yourself · 2 MCQs

Loading…

  • 2017 AD · 4 marks

The time delay of the four segments in the pipeline system are t1 = 30ns, t2 = 35ns, t3 = 20ns and t4 = 45ns. The interface registers delay time d = 4ns. Find the speed ratio of pipeline system over equivalent conventional system for 100 tasks.

Answer

Pipeline clock period. The clock must be as long as the slowest segment plus the register delay: tp=max⁡(t1,t2,t3,t4)+d=45+4=49 nst_p = \max(t_1,t_2,t_3,t_4) + d = 45 + 4 = 49 \text{ ns}

Pipeline time for n=100n = 100 tasks with k=4k = 4 segments: Tpipe=(k+n−1) tp=(4+100−1)(49)=103×49=5047 nsT_{pipe} = (k + n - 1)\,t_p = (4 + 100 - 1)(49) = 103 \times 49 = 5047 \text{ ns}

Equivalent non-pipelined system: each task takes the sum of the segment delays, tn=30+35+20+45=130t_n = 30 + 35 + 20 + 45 = 130 ns, so Tnon-pipe=n tn=100×130=13000 nsT_{non\text{-}pipe} = n\,t_n = 100 \times 130 = 13000 \text{ ns}

Speedup: S=130005047≈2.58S = \frac{13000}{5047} \approx 2.58

The pipeline is about 2.58 times faster, less than the ideal limit of k=4k = 4 because the segment delays are unequal and the register delay is added.

Answer checked by Claude Sonnet · Oct 21, 2026

Test yourself · 2 MCQs

Loading…

  • 2017 AD · 4 marks

Write a symbolic program to subtract two double precision numbers and explain each statement.

Answer

Let XX and YY be 32-bit numbers held in two 16-bit words each (low part XL, YL and high part XH, YH), and let Z=X−YZ = X - Y. The subtraction is done by adding the 2's complement of YY: Z=X+Y‾+1Z = X + \overline{Y} + 1. The carry from the low words must be carried into the high words.

        ORG 100
        CLE            / clear E
        LDA YL         / AC = YL
        CMA            / AC = complement of YL
        INC            / AC = -YL (2's complement); E = carry if YL = 0
        STA TL         / TL = low word of -Y
        CLA            / AC = 0
        CIL            / AC = E (carry from the negation of the low word)
        STA C          / save the carry
        LDA YH         / AC = YH
        CMA            / AC = complement of YH
        ADD C          / add the carry: AC = high word of -Y
        STA TH         / TH = high word of -Y
        CLE            / clear E
        LDA XL         / AC = XL
        ADD TL         / AC = XL + TL; E = carry
        STA ZL         / ZL = low word of the result
        CLA            / AC = 0
        CIL            / AC = E (carry from the low words)
        ADD XH         / AC = carry + XH
        ADD TH         / AC = XH + TH + carry
        STA ZH         / ZH = high word of the result
        HLT
XL,     HEX 0          / low word of X
XH,     HEX 0          / high word of X
YL,     HEX 0          / low word of Y
YH,     HEX 0          / high word of Y
ZL,     HEX 0          / low word of Z
ZH,     HEX 0          / high word of Z
TL,     HEX 0          / low word of -Y
TH,     HEX 0          / high word of -Y
C,      HEX 0          / carry
        END

The first part forms the double-precision negative of Y, and the second part adds it to X with carry propagation between the low and high words.

Answer checked by Claude Sonnet · Oct 21, 2026

Test yourself · 2 MCQs

Loading…

  • 2017 AD · 5 marks

What are the different CPU organizations? List and explain each type of addressing modes available.

Answer

CPU organizations (by how the processor registers are organised, which decides the instruction format):

  1. Single accumulator organization: one accumulator register is used for all operations, with one address in the instruction. Example: ADD XADD\ X does AC←AC+M[X]AC \leftarrow AC + M[X].
  2. General register organization: many registers are used and the instruction has two or three addresses. Example: ADD R1,R2,R3ADD\ R1, R2, R3 does R1←R2+R3R1 \leftarrow R2 + R3.
  3. Stack organization: operations use a push-down stack, and arithmetic instructions need no address (zero-address). Example: ADDADD pops the top two items and pushes their sum, and PUSH XPUSH\ X and POP XPOP\ X move data.

Addressing modes. The addressing mode tells how the operand or its effective address (EA) is found from the address field.

  • Implied mode: the operand is implied by the instruction, as in CMACMA (complement AC) and stack operations.
  • Immediate mode: the operand is in the instruction itself, with no memory reference. Used for constants.
  • Register mode: the operand is in a CPU register named in the instruction.
  • Register indirect mode: the register holds the address of the operand in memory.
  • Autoincrement/autodecrement mode: like register indirect, but the register is incremented or decremented automatically after (or before) the access, for walking through tables.
  • Direct address mode: the address field is the effective address, EA=AEA = A.
  • Indirect address mode: the address field gives the location that holds the address of the operand, EA=M[A]EA = M[A].
  • Relative address mode: EA=PC+AEA = PC + A. Useful for branches and position-independent code.
  • Indexed addressing mode: EA=A+XREA = A + XR (index register). Useful for arrays.
  • Base register addressing mode: EA=A+BREA = A + BR (base register). Useful for relocating programs.

Answer checked by Claude Sonnet · Oct 21, 2026

Test yourself · 2 MCQs

Loading…

  • 2017 AD · 5 marks

Explain hypercube interconnection structure in brief with its merits and demerits. Explain different cache mapping techniques.

Answer

Hypercube interconnection. A binary hypercube (n-cube) connects 2n2^n processors, one at each corner of an n-dimensional cube. Each processor has a distinct n-bit binary address and is directly linked to the nn processors whose address differs from its own in exactly one bit.

For example, n=3n=3 has 8 processors (000 to 111); processor 000 is linked to 001, 010 and 100. The maximum distance between any two nodes is nn, and the route between two nodes is found by comparing their addresses bit by bit.

Merits:

  • The communication distance is short (at most log⁡2N\log_2 N links) and there are several alternative paths, so the network is fault tolerant.
  • It is scalable, and the number of links per node grows only logarithmically.
  • It supports many other topologies (rings, meshes, trees) and is good for parallel algorithms.

Demerits:

  • The number of connections per processor grows with nn, so the hardware cost and wiring are high.
  • The size must be a power of 2, and it is hard to extend by only one processor.
  • The layout is complex for large nn.

Cache mapping techniques. Mapping decides where a block of main memory is placed in the cache.

  • Associative mapping: any block of main memory can go to any cache line. The cache stores both the address and the data, and the address is compared with all lines at once. It is the most flexible and has the best hit ratio, but needs costly associative hardware.
  • Direct mapping: the address is split into tag, index and offset. A block can only go to one line, given by line=block number mod number of lines\text{line} = \text{block number} \bmod \text{number of lines}. It is simple and cheap, but blocks that map to the same line cause conflicts and a lower hit ratio.
  • Set-associative mapping: the cache is divided into sets with kk lines each. A block maps to one set, given by block number mod number of sets\text{block number} \bmod \text{number of sets}, and can be in any of the kk lines of the set. It is a compromise between direct and associative mapping, and a replacement algorithm (FIFO, LRU) is used within the set.

Answer checked by Claude Sonnet · Oct 21, 2026

Test yourself · 2 MCQs

Loading…

  • 2018 AD · 1 mark

Convert 24510245_{10} to 9's complement.

Answer

The 9's complement of a decimal number is found by subtracting each digit from 9:

999−245=754999 - 245 = 754

So the 9's complement of 24510245_{10} is 754754.

Answer checked by Claude Sonnet · Oct 21, 2026

Test yourself · 2 MCQs

Loading…

  • 2018 AD · 1 mark

Define interrupt.

Answer

An interrupt is a signal from an I/O device, a program error or a timer that makes the CPU suspend the program it is executing, save its state, and run a service routine for the event. After the service routine, the CPU resumes the interrupted program.

Answer checked by Claude Sonnet · Oct 21, 2026

Test yourself · 2 MCQs

Loading…

  • 2018 AD · 1 mark

How the size of program counter in basic computer determined?

Answer

The program counter holds the address of the next instruction, so its size is set by the memory size. For a memory of 2n2^n words, PC has nn bits. In the basic computer, memory has 4096 words (2122^{12}), so PC is 12 bits.

Answer checked by Claude Sonnet · Oct 21, 2026

Test yourself · 2 MCQs

Loading…

  • 2018 AD · 1 mark

Define hypercube.

Answer

A hypercube (binary n-cube) is an interconnection structure with 2n2^n processors, each at a corner of an n-dimensional cube and directly connected to nn neighbours whose binary addresses differ from its own in exactly one bit.

Answer checked by Claude Sonnet · Oct 21, 2026

Test yourself · 2 MCQs

Loading…

  • 2018 AD · 1 mark

Define strobe.

Answer

A strobe is a control signal (a pulse) used in asynchronous data transfer to tell the receiving unit when to accept data. It is activated by the source or by the destination to mark the time of the transfer.

Answer checked by Claude Sonnet · Oct 21, 2026

Test yourself · 2 MCQs

Loading…

  • 2018 AD · 1 mark

Define pipeline hazards.

Answer

Pipeline hazards are the situations that stop the next instruction from executing in its clock cycle and so cause the pipeline to stall. They are of three types: structural (resource conflict), data (dependency between instructions) and control (branch) hazards.

Answer checked by Claude Sonnet · Oct 21, 2026

Test yourself · 2 MCQs

Loading…

  • 2018 AD · 1 mark

What is locality of reference?

Answer

Locality of reference is the tendency of a program to access the same memory locations (temporal locality) or the locations near them (spatial locality) repeatedly over short periods. It is the reason cache memory and memory hierarchy are effective.

Answer checked by Claude Sonnet · Oct 21, 2026

Test yourself · 2 MCQs

Loading…

  • 2018 AD · 1 mark

Define critical section.

Answer

A critical section is a segment of code in which a process accesses shared data or a shared resource. It must be executed by only one process at a time (mutual exclusion) to avoid inconsistent results.

Answer checked by Claude Sonnet · Oct 21, 2026

Test yourself · 2 MCQs

Loading…

  • 2018 AD · 4 marks

What is cache coherence? Explain with example and suggest the solutions.

Answer

Cache coherence. In a multiprocessor system, each processor has its own cache, and the same memory block may be held in several caches. The cache coherence problem arises when a processor modifies its copy, so that the other copies and main memory hold stale (inconsistent) data.

Example. Let location XX in main memory have the value 52, and let processors P1 and P2 both read XX into their caches. Then:

  • P1 writes X=120X = 120 in its cache.
  • With a write-back cache, main memory still holds 52, and P2's cache also still holds 52.
  • If P2 now reads XX, it gets the stale value 52 instead of 120, so the processors see different values.

Even with write-through, memory is updated to 120, but P2's cached copy remains 52.

Solutions:

  1. Do not cache shared writable data: shared variables are kept in main memory only or in a non-cacheable region. It is simple but slow.
  2. Snooping (bus-watching) cache controllers: each cache controller monitors the common bus. On a write, the other caches either invalidate their copy (write-invalidate) or update it (write-update). This works with write-through or write-back caches, and protocols such as MESI are used.
  3. Directory-based protocols: a central directory records which caches hold each block, and sends invalidation or update messages only to those caches. It scales better than snooping.
  4. Centralised global table: a table in the central controller records the blocks in the caches and their status (read-only or read/write), and it controls their access.

Answer checked by Claude Sonnet · Oct 21, 2026

Test yourself · 2 MCQs

Loading…

  • 2018 AD · 4 marks

Why different addressing mode required? Explain any four addressing mode.

Answer

Why different addressing modes are required

  • They give programmers flexibility: pointers, arrays, loop counters, indexing and relocation can be handled efficiently.
  • They reduce the number of bits in the address field of an instruction (e.g. register modes need only a few bits).
  • They allow position-independent (relocatable) programs and compact code.
  • They allow the effective address to be computed at run time instead of being fixed when the program is written.

Four addressing modes

  1. Immediate mode: the operand is in the instruction itself (e.g. MOV R1, #5). No memory reference is needed for the operand, so it is fast, but the value is constant.
  2. Direct mode: the address field gives the effective address of the operand: EA=AEA = A. One memory reference is needed.
  3. Indirect mode: the address field gives the address of a memory word that holds the address of the operand: EA=M[A]EA = M[A]. Two memory references are needed, but it supports pointers.
  4. Register indirect mode: the instruction names a register that holds the operand address: EA=[R]EA = [R]. It needs fewer address bits and only one memory reference.

Other modes include register mode, indexed mode (EA=A+index registerEA = A + \text{index register}), base-register mode and relative mode (EA=A+PCEA = A + PC).

Answer checked by Claude Sonnet · Oct 21, 2026

Test yourself · 2 MCQs

Loading…

  • 2018 AD · 4 marks

What is pipeline? A non-pipeline system takes 100ns to process a task. The same task can be processed in a six-segment pipeline with a clock cycle of 20ns. Calculate the speedup ratio of the pipeline for 200 tasks.

Answer

Pipeline: a technique of decomposing a sequential process into sub-operations (segments), each executed in a dedicated segment that works concurrently with the others. Several tasks are therefore at different stages at the same time, which increases throughput.

Speedup

Given: tn=100t_n = 100 ns, k=6k = 6 segments, tp=20t_p = 20 ns, n=200n = 200 tasks.

S=n tn(k+n−1) tp=200×100(6+200−1)×20=200004100≈4.88S = \frac{n\,t_n}{(k+n-1)\,t_p} = \frac{200\times 100}{(6+200-1)\times 20} = \frac{20000}{4100} \approx 4.88

The pipeline is about 4.884.88 times faster. For very large nn, the speedup approaches tn/tp=5t_n/t_p = 5.

Answer checked by Claude Sonnet · Oct 21, 2026

Test yourself · 2 MCQs

Loading…

  • 2018 AD · 5 marks

What is Address sequencing? Explain with diagram how selection of address is done?

Answer

Address sequencing is the process by which a microprogrammed control unit determines the address of the next microinstruction in control memory. Microinstructions are normally stored in consecutive locations, but the sequence must change for branches, subroutine calls, returns and the mapping from an instruction's opcode to its microprogram routine.

Selection of the next address

                +---------------------+
 Opcode ------->| Mapping logic       |--------+
                +---------------------+        |
 Branch address field ----------------------+  |
 Subroutine register (SBR) ---------------+ |  |
 Increment (CAR + 1) -------------+       | |  |
                                  v       v v  v
                              +--------------------+
 Status bits ---------------->|   Multiplexers     |<-- MUX select
 (from condition select)      +--------------------+    (branch logic)
                                        |
                                        v
                         +---------------------------+
                         | Control Address Register  |
                         |           (CAR)           |
                         +---------------------------+
                                        |
                                        v
                                Control memory

The next address comes from one of these sources, chosen by the multiplexers under the control of the branch logic and status bits:

  1. Incrementing CAR (CAR←CAR+1CAR \leftarrow CAR + 1) for sequential execution.
  2. Branch address field of the microinstruction for an unconditional or conditional jump, taken when the tested status bit is true; otherwise CAR is incremented.
  3. Mapping logic: the opcode of the machine instruction is mapped into the starting address of its microroutine (e.g. by placing 0 in the MSB and the opcode bits in the middle).
  4. Subroutine register (SBR): the return address is saved in SBR on a call (CALL) and loaded back into CAR on RET.
  5. An initial address loaded at power-up/reset.

Answer checked by Claude Sonnet · Oct 21, 2026

Test yourself · 2 MCQs

Loading…

  • 2018 AD · 5 marks

What is the advantage of DMA over programmed I/O? Explain DMA transfer with diagram

Answer

Advantage of DMA over programmed I/O

In programmed I/O the CPU runs a loop that tests the device status and moves every word through a CPU register, so the CPU is busy for the entire transfer. In DMA the DMA controller transfers blocks of data directly between the I/O device and memory, so:

  • the CPU is freed for other work during the transfer (it is involved only at the start and the end);
  • transfer rate is much higher, limited only by memory speed;
  • there is no per-word instruction overhead, so it suits large block transfers.

DMA transfer

 CPU <----> Address bus / Data bus / Control <----> Memory
   ^   BR ->|                                         ^
   |<- BG --|        +---------------------+          |
   |        +--------| DMA controller      |----------+
   |                 |  Address register   |
   |                 |  Word count reg.    |
   |                 |  Control register   |
 Interrupt <---------|                     |<----> I/O device
                     +---------------------+  (DMA request / DMA acknowledge)

Steps:

  1. The CPU initialises the DMA controller with the starting memory address (address register), the number of words (word count register) and the direction of transfer (read/write), then continues with other work.
  2. The device raises a DMA request. The DMA controller sends a bus request (BR) to the CPU.
  3. The CPU finishes the current bus cycle, places its buses in high-impedance state and replies with bus grant (BG).
  4. The DMA controller now controls the buses, sends the address to memory, and transfers a word (cycle stealing) or a whole block (burst mode). After each word the address register is incremented and the word count is decremented.
  5. When the word count reaches zero, the DMA controller releases the bus and interrupts the CPU to signal completion.

Answer checked by Claude Sonnet · Oct 21, 2026

Test yourself · 2 MCQs

Loading…

  • 2019 AD · 1 mark

What are the methods of representing negative integers? Give examples.

Answer

Negative integers are represented in three ways (the MSB is the sign bit, 1 for negative). Example for −5-5 in 8 bits:

  1. Signed magnitude: sign bit plus the magnitude: 1000010110000101.
  2. Signed 1's complement: complement all bits of +5=00000101+5 = 00000101: 1111101011111010.
  3. Signed 2's complement: 1's complement plus 1: 1111101111111011.

Answer checked by Claude Sonnet · Oct 21, 2026

Test yourself · 2 MCQs

Loading…

  • 2019 AD · 1 mark

How handshaking is different than strobe?

Answer

In strobe control a single control line is used: the source (or destination) sends a strobe pulse to say that data is valid (or should be read), and there is no confirmation from the other unit. In handshaking two control lines are used: a request/data-valid signal from the source and an acknowledge/data-accepted signal from the destination, so each unit knows the other has responded. Handshaking is therefore more reliable and works with units of different speeds.

Answer checked by Claude Sonnet · Oct 21, 2026

Test yourself · 2 MCQs

Loading…

  • 2019 AD · 1 mark

How daisy chaining assigns priority?

Answer

In daisy chaining, all devices are connected in series on a common interrupt request line. The interrupt acknowledge (PI/PO) signal passes from the CPU through the devices one after another, starting with the device nearest the CPU. A device that has requested an interrupt blocks the acknowledge signal (PO=0) and places its vector address on the bus; otherwise it passes the signal on. Hence priority is fixed by physical position: the device closest to the CPU has the highest priority.

Answer checked by Claude Sonnet · Oct 21, 2026

Test yourself · 2 MCQs

Loading…

  • 2019 AD · 4 marks

Show the step by step multiplication using Booth algorithm if (+12) is multiplied by (-9).

Answer

Use 5-bit registers. M=+12=01100M = +12 = 01100, −M=10100-M = 10100, Q=−9=10111Q = -9 = 10111. Initially AC=00000AC = 00000, Q−1=0Q_{-1} = 0, SC=5SC = 5.

StepQ0Q−1Q_0Q_{-1}OperationACQQ−1Q_{-1}
Initial00000101110
110AC−MAC - M10100101110
ashr11010010111
211ashr11101001011
311ashr11110100101
401AC+MAC + M01010100101
ashr00101010010
510AC−MAC - M11001010010
ashr11100101001

Product =AC Q=11100 10100= AC\,Q = 11100\,10100. This is negative; its 2's complement is 0001101100=1080001101100 = 108.

(+12)×(−9)=−108(+12)\times(-9) = -108

Answer checked by Claude Sonnet · Oct 21, 2026

Test yourself · 2 MCQs

Loading…

  • 2019 AD · 4 marks

How does a basic computer execute instruction? Describe with flowchart.

Answer

The basic computer executes each instruction in an instruction cycle made of these phases, repeated until HALT:

  1. Fetch the instruction from memory.
  2. Decode the opcode.
  3. Read the effective address from memory if the instruction has an indirect address.
  4. Execute the instruction.

Fetch and decode (timing signals T0,T1,T2T_0, T_1, T_2)

  • T0T_0: AR←PCAR \leftarrow PC
  • T1T_1: IR←M[AR], PC←PC+1IR \leftarrow M[AR],\ PC \leftarrow PC + 1
  • T2T_2: decode IR(12-14)IR(12\text{-}14), AR←IR(0-11), I←IR(15)AR \leftarrow IR(0\text{-}11),\ I \leftarrow IR(15)

Flowchart

            Start, SC <- 0
                 |
         T0: AR <- PC
         T1: IR <- M[AR], PC <- PC + 1
         T2: Decode IR(12-14), AR <- IR(0-11), I <- IR(15)
                 |
          D7 = 1 ?  ---- yes ----> I = 1 ?
            | no                     |-- no  --> Register-reference instr.
            v                        |             (execute, SC <- 0)
          I = 1 ?                    '-- yes --> Input-output instr.
        yes |     | no                           (execute, SC <- 0)
            v     v
   T3: AR <- M[AR]   T3: nothing
            \          /
             v        v
     T4..: Execute memory-reference instruction
           (AND, ADD, LDA, STA, BUN, BSA, ISZ)
                 |
              SC <- 0
              back to T0
  • If D7=1D_7 = 1 and I=0I = 0 it is a register-reference instruction; if D7=1D_7 = 1 and I=1I = 1 it is an input-output instruction. Both execute at T3T_3.
  • If D7=0D_7 = 0 it is a memory-reference instruction: if I=1I = 1 the effective address is fetched at T3T_3 (AR←M[AR]AR \leftarrow M[AR]), then the instruction executes at T4T_4 onwards.
  • After execution the sequence counter is cleared (SC←0SC \leftarrow 0) and the next instruction cycle begins, unless the interrupt flip-flop IEN/R is set, in which case an interrupt cycle is entered.

Answer checked by Claude Sonnet · Oct 21, 2026

Test yourself · 2 MCQs

Loading…

  • 2019 AD · 4 marks

What is the purpose of memory hierarchy? Given a cache memory with access time 2ns and RAM with 10ns, if cache hit ratio is 80%. Find the average memory access time.

Answer

Purpose of memory hierarchy: no single memory is fast, large and cheap at the same time. A hierarchy (registers, cache, main memory, secondary storage) combines small fast memories with large slow ones so that the average access time approaches that of the fastest level, while the cost per bit stays close to that of the cheapest level. It works because of locality of reference.

Average access time

Given tc=2t_c = 2 ns, tm=10t_m = 10 ns, hit ratio H=0.8H = 0.8 (cache and main memory accessed in parallel on a miss):

Tavg=H tc+(1−H) tm=0.8(2)+0.2(10)=1.6+2=3.6 nsT_{avg} = H\,t_c + (1-H)\,t_m = 0.8(2) + 0.2(10) = 1.6 + 2 = 3.6\ \text{ns}

(If the memory is accessed only after the cache lookup fails, Tavg=0.8(2)+0.2(2+10)=4.0T_{avg} = 0.8(2)+0.2(2+10) = 4.0 ns.)

Answer checked by Claude Sonnet · Oct 21, 2026

Test yourself · 2 MCQs

Loading…

  • 2019 AD · 5 marks

Define microprogrammed control unit. Explain any three interconnection structures for a multiprocessor

Answer

Microprogrammed control unit: a control unit whose control signals are generated by a stored program of microinstructions kept in a control memory (ROM). Each machine instruction is executed by a sequence of microinstructions (a microprogram); the control address register (CAR) selects the microinstruction, which is read into the control data register and whose bits give the control signals and the next-address information. It is flexible and easy to modify, though slower than hardwired control.

Interconnection structures of a multiprocessor

  1. Time-shared common bus: all processors, memories and I/O units share one bus. Only one transfer can occur at a time, so arbitration is needed. It is simple and cheap, but the bus is a bottleneck and a single point of failure.
  2. Multiport memory: each memory module has separate ports for each processor, with priority logic inside the memory. Several processors can access different modules simultaneously, giving high transfer rate, but it needs many ports and cables and costly memory control.
  3. Crossbar switch: a switch at every crosspoint between processors and memory modules allows all processors to access different modules at the same time. Only conflicts on the same module need resolving. It gives the highest bandwidth, but hardware cost grows as n×mn\times m switches.

Other structures are the multistage switching network and the hypercube.

Answer checked by Claude Sonnet · Oct 21, 2026

Test yourself · 2 MCQs

Loading…

  • 2019 AD · 5 marks

How pipelining result in better performance of the system? Identify and explain different pipeline hazards with examples.

Answer

How pipelining improves performance

The instruction cycle is split into segments (fetch, decode, operand fetch, execute, write back), each with its own hardware. While one instruction is executing, the next one is being decoded and another fetched. Once the pipeline is full, one instruction completes every clock cycle, so throughput increases. For nn tasks and kk segments:

Speedup=n tn(k+n−1) tp→k(n→∞)\text{Speedup} = \frac{n\,t_n}{(k+n-1)\,t_p} \to k \quad (n \to \infty)

Pipeline hazards

  1. Structural (resource) hazards: two instructions need the same hardware resource in the same cycle, e.g. an instruction fetch and a data access both using a single memory. Fix: separate instruction and data memories/caches, or stall.
  2. Data hazards: an instruction depends on the result of a previous one that is not yet written. Example: ADD R1,R2,R3 followed by SUB R4,R1,R5. SUB needs R1 before ADD writes it (read after write). Fix: operand forwarding, hardware interlocks/stalls, or compiler delayed load.
  3. Control (branch) hazards: a branch or jump changes the PC, so instructions already fetched after it may be wrong. Example: BEQ R1,R2,L leaves the next instructions fetched before the outcome is known. Fix: prefetch both targets, branch target buffer, branch prediction, delayed branch.

Hazards cause stalls that reduce the ideal speedup.

Answer checked by Claude Sonnet · Oct 21, 2026

Test yourself · 2 MCQs

Loading…

  • 2021 AD · 10 marks

List the significance of complements in the digital computer. Explain fixed point representation with example.

Answer

Significance of complements in digital computers

  • Complements allow subtraction to be done by addition (A−B=A+Bˉ+1A - B = A + \bar{B} + 1), so the same adder is used for both and the hardware is simpler and cheaper.
  • They allow representation of negative numbers (signed 1's and 2's complement) with a single sign bit.
  • They allow logical manipulation, e.g. 1's complement is a simple bitwise NOT, and 2's complement has a unique zero.
  • Using the 2's complement, arithmetic overflow is easy to detect and signed and unsigned addition use the same circuit.

Fixed-point representation

A fixed-point number has the binary point at a fixed position, almost always either at the extreme left (a fraction) or at the extreme right (an integer). The leftmost bit is the sign bit (0 for +, 1 for -). Three formats exist for negative numbers:

For +14+14 in 8 bits: 0000111000001110. For −14-14 in 8 bits:

  • Signed magnitude: 1000111010001110
  • Signed 1's complement: 1111000111110001
  • Signed 2's complement: 1111001011110010

For a fraction, the binary point is assumed just after the sign bit: 0.10112=0.68750.1011_2 = 0.6875. For an integer it is assumed to the right of the LSB. Range of nn-bit 2's complement: −2n−1-2^{n-1} to 2n−1−12^{n-1}-1 (for n=8n=8: −128-128 to 127127). Fixed-point numbers are fast and simple, but have limited range and precision; floating point is used when a wider range is needed.

Answer checked by Claude Sonnet · Oct 21, 2026

Test yourself · 2 MCQs

Loading…

  • 2021 AD · 10 marks

Explain arithmetic and shift micro operations in brief.

Answer

A micro-operation is an elementary operation performed on data stored in registers in one clock pulse.

Arithmetic micro-operations

Micro-operationMeaning
R3←R1+R2R3 \leftarrow R1 + R2add
R3←R1−R2R3 \leftarrow R1 - R2subtract (R1+R2‾+1R1 + \overline{R2} + 1)
R2←R2‾R2 \leftarrow \overline{R2}1's complement
R2←R2‾+1R2 \leftarrow \overline{R2}+12's complement (negate)
R1←R1+1R1 \leftarrow R1 + 1increment
R1←R1−1R1 \leftarrow R1 - 1decrement

They are implemented with a binary adder (full adders in cascade). A binary adder-subtractor uses an XOR gate on each BB input with a mode control MM: M=0M=0 adds, M=1M=1 subtracts (inverts BB and sets carry-in to 1). An increment is a half-adder chain. An arithmetic circuit with select lines S1S0S_1S_0 and CinC_{in} generates add, add with carry, subtract, decrement, transfer and increment from one circuit.

Shift micro-operations

Shifts move the bits of a register left or right and are used for serial transfer and arithmetic.

  1. Logical shift: zero is inserted at the vacated end. shl R: R←R \leftarrow shl RR; shr R: R←R \leftarrow shr RR.
  2. Circular shift (rotate): the bit shifted out is re-inserted at the other end. cil R, cir R.
  3. Arithmetic shift: shifts a signed number, keeping the sign.
    • ashr: the sign bit stays and is copied into the next bit, i.e. divides by 2. E.g. 11101010→1111010111101010 \to 11110101.
    • ashl: shifts left, the sign bit unchanged, multiplies by 2; overflow occurs if the sign bit changes, i.e. V=Rn−1⊕Rn−2V = R_{n-1}\oplus R_{n-2}.

In hardware, a bidirectional shift register with parallel load or a combinational shifter built from multiplexers (4x1 muxes with select SS) is used.

Answer checked by Claude Sonnet · Oct 21, 2026

Test yourself · 2 MCQs

Loading…

  • 2021 AD · 10 marks

Evaluate the arithmetic statement X=(P+Q)∗(R+S)X=(P+Q)*(R+S) using a general register computer with three address and two address instruction format.

Answer

X=(P+Q)∗(R+S)X = (P+Q)*(R+S)

Three-address instruction format (OP dest, src1, src2; R1, R2 are registers)

ADD R1, P, Q      ; R1 <- M[P] + M[Q]
ADD R2, R, S      ; R2 <- M[R] + M[S]
MUL X, R1, R2     ; M[X] <- R1 * R2

Three instructions are needed.

Two-address instruction format (OP dest, src; the destination is also the first operand)

MOV R1, P         ; R1 <- M[P]
ADD R1, Q         ; R1 <- R1 + M[Q]
MOV R2, R         ; R2 <- M[R]
ADD R2, S         ; R2 <- R2 + M[S]
MUL R1, R2        ; R1 <- R1 * R2
MOV X, R1         ; M[X] <- R1

Six instructions are needed. The three-address format gives shorter programs, but each instruction is longer and needs more memory fields.

Answer checked by Claude Sonnet · Oct 21, 2026

Test yourself · 2 MCQs

Loading…

  • 2021 AD · 10 marks

Multiply (+7)10(+7)_{10} with (−3)10(-3)_{10} by using Booth's multiplication and draw flowchart for corresponding example.

Answer

Use 4-bit registers. M=+7=0111M = +7 = 0111, −M=1001-M = 1001, Q=−3=1101Q = -3 = 1101. Initially AC=0000AC = 0000, Q−1=0Q_{-1} = 0, SC=4SC = 4.

Booth's rule (look at Q0Q−1Q_0Q_{-1}): 10→AC←AC−M10 \to AC \leftarrow AC - M; 01→AC←AC+M01 \to AC \leftarrow AC + M; 0000 or 11→11 \to no operation. Then arithmetic shift right (ashr) AC,Q,Q−1AC, Q, Q_{-1} and SC←SC−1SC \leftarrow SC - 1.

StepQ0Q−1Q_0Q_{-1}OperationACQQ−1Q_{-1}SC
Initial0000110104
110AC−MAC - M100111010
ashr1100111013
201AC+MAC + M001111101
ashr0001111102
310AC−MAC - M101011110
ashr1101011111
411ashr1110101110

Result AC Q=1110 1011AC\,Q = 1110\,1011. It is negative; its 2's complement is 00010101=2100010101 = 21.

(+7)×(−3)=−21(+7)\times(-3) = -21

Flowchart

Start: AC <- 0, Q-1 <- 0, M <- multiplicand, Q <- multiplier, SC <- n
          |
          v
   +--> Q0 Q-1 ?
   |     10 : AC <- AC + (-M)  (AC - M)
   |     01 : AC <- AC + M
   |     00 / 11 : no operation
   |          |
   |          v
   |   ashr (AC, Q, Q-1)
   |   SC <- SC - 1
   |          |
   |          v
   +-- no --- SC = 0 ?
              | yes
              v
     End (product in AC and Q)

Answer checked by Claude Sonnet · Oct 21, 2026

Test yourself · 2 MCQs

Loading…

  • 2021 AD · 10 marks

What is the use of control address register in micro programmed organization?

Answer

The control address register (CAR) holds the address of the next microinstruction to be read from control memory in a microprogrammed control unit.

Its uses:

  • It supplies the address to the control memory, so the selected microinstruction is read into the control data register and its bits generate the control signals.
  • It is loaded with the next address, which comes from one of these sources: increment of CAR (sequential execution), the branch address field (jump), the mapping logic (starting address of the microroutine for the opcode), or the subroutine register (return from a microsubroutine call).
  • It is loaded with the initial address at reset or after each instruction fetch, so the correct microprogram starts.

In effect, it plays the role in the control unit that the program counter plays for the machine instructions.

Answer checked by Claude Sonnet · Oct 21, 2026

Test yourself · 2 MCQs

Loading…

  • 2021 AD · 10 marks

What is the purpose of strobe pulse in asynchronous data transfer? Explain how handshaking method resolve the problem in strobe control method.

Answer

Purpose of the strobe pulse

In asynchronous data transfer the source and destination units have independent clocks, so a control signal is needed to time the transfer. The strobe pulse is a single control line that tells the receiving unit when valid data is on the data bus.

  • Source-initiated strobe: the source places data on the bus and, after a short delay, pulses the strobe so the destination can accept the data.
  • Destination-initiated strobe: the destination pulses the strobe to request data, and the source then places data on the bus.

Problem with strobe control

There is no feedback. In source-initiated transfer the source cannot know whether the destination actually received the data; in destination-initiated transfer the destination cannot know whether the data placed on the bus is valid. Slow units can lose data.

How handshaking solves it

Handshaking uses two control lines, one in each direction, so each step is acknowledged.

Source-initiated:

  1. The source places data on the bus and enables data valid.
  2. The destination accepts the data and enables data accepted.
  3. The source sees the acknowledgement, disables data valid and removes the data.
  4. The destination disables data accepted, ready for the next transfer.

Destination-initiated:

  1. The destination enables ready for data.
  2. The source places data on the bus and enables data valid.
  3. The destination accepts the data and disables ready for data.
  4. The source disables data valid and removes the data.

Each unit proceeds only when the other has responded, so transfer is reliable between units of different speeds, and faulty units are detected (a time-out circuit can be added when no reply arrives).

Answer checked by Claude Sonnet · Oct 21, 2026

Test yourself · 2 MCQs

Loading…

  • 2021 AD · 10 marks

What do you mean by multiprocessor? List different interconnection structures and explain any two of them.

Answer

Multiprocessor: a computer system with two or more CPUs that share memory and I/O under one integrated operating system, executing several programs or parts of a program at the same time. It increases throughput, speed and reliability.

Interconnection structures

  1. Time-shared common bus
  2. Multiport memory
  3. Crossbar switch
  4. Multistage switching network
  5. Hypercube interconnection

Time-shared common bus: all processors, memory modules and I/O units are connected to one common bus. Only one processor can use the bus at a time; others must wait, so a bus arbitration scheme (priority, daisy chain, etc.) is used. It is simple and cheap and easy to expand, but total transfer rate is limited by the single bus and a bus failure stops the entire system.

Crossbar switch: there is a switch at each crosspoint between every processor and every memory module. A path can be set up between any processor and any module, and several processors can transfer simultaneously to different modules. Each module has its own multiplexer and arbitration logic to resolve conflicts when more than one processor requests the same module. It gives the highest bandwidth and parallelism, but the hardware is expensive for nn processors and mm modules (n×mn\times m crosspoints).

Answer checked by Claude Sonnet · Oct 21, 2026

Test yourself · 2 MCQs

Loading…

Questions from TU BIM Third Semester Model Questions 2023 (IT 237, ACC 201, IT 236, STT 201, IT 238) (Faculty of Management model question set 2023, BIM third semester (new course)), TU BIM Third Semester Model Question 2023 ACC 201 Financial Accounting (Faculty of Management model question 2023), TU BIM Third Semester Model Question 2023 IT 236 Microprocessor and Computer Architecture (Faculty of Management model question 2023), TU BIM Third Semester Model Question 2023 STT 201 Business Statistics (Faculty of Management model question 2023), TU BIM Third Semester Model Question 2023 IT 238 Data Structure and Algorithms (Faculty of Management model question 2023), TU BIM Third Semester Model Question 2023 STT 201 Business Statistics (Lab) (Faculty of Management model question 2023, MS-Excel practical), TU BIM 2014 Third Semester IT 215 Web Programming I (model question) (Faculty of Management model question 2014 (old course), via EducateNepal), TU BIM 2014 Third Semester IT 216 Java Programming I (model question) (Faculty of Management model question 2014 (old course), via EducateNepal), TU BIM 2014 Third Semester IT 217 Computer Organization (model question) (Faculty of Management model question 2014 (old course), via EducateNepal), TU BBA/BIM/BBM 2015 Third Semester STT 201 Business Statistics (model question) (Faculty of Management model question 2015 (old course), via EducateNepal), TU BBA/BIM/BBM 2015 Third Semester STT 201 Business Statistics Lab (model question) (Faculty of Management model question 2015, lab work using MS-Excel), TU BIM Computer Organization (IT 217) 2012 AD (Board exam paper, 2012 AD), TU BIM Computer Organization (IT 217) 2014 AD (Board exam paper, 2014 AD), TU BIM Computer Organization (IT 217) 2015 AD (Board exam paper, 2015 AD), TU BIM Computer Organization (IT 217) 2016 AD (Board exam paper, 2016 AD), TU BIM Computer Organization (IT 217) 2017 AD (Board exam paper, 2017 AD), TU BIM Computer Organization (IT 217) 2018 AD (Board exam paper, 2018 AD), TU BIM Computer Organization (IT 217) 2019 AD (Board exam paper, 2019 AD), TU BIM Computer Organization (IT 217) 2021 AD (Board exam paper, 2021 AD), TU BIM Web Programming I (IT 215) 2014 AD (Board exam paper, 2014 AD), TU BIM Web Programming I (IT 215) 2015 AD (Board exam paper, 2015 AD), TU BIM Web Programming I (IT 215) 2016 AD (Board exam paper, 2016 AD), TU BIM Web Programming I (IT 215) 2017 AD (Board exam paper, 2017 AD), TU BIM Web Programming I (IT 215) 2018 AD (Board exam paper, 2018 AD), TU BIM Web Programming I (IT 215) 2019 AD (Board exam paper, 2019 AD), TU BIM Web Programming I (IT 215) 2021 AD (Board exam paper, 2021 AD), TU BIM Java Programming I (IT 216) 2015 AD (Board exam paper, 2015 AD), TU BIM Java Programming I (IT 216) 2017 AD (Board exam paper, 2017 AD), TU BIM Java Programming I (IT 216) 2018 AD (Board exam paper, 2018 AD), TU BIM Java Programming I (IT 216) 2019 AD (Board exam paper, 2019 AD), TU BIM Java Programming I (IT 216) 2021 AD (Board exam paper, 2021 AD), TU BIM Business Statistics (STT 201) 2009 AD (Board exam paper, 2009 AD), TU BIM Business Statistics (STT 201) 2010 AD (Board exam paper, 2010 AD), TU BIM Business Statistics (STT 201) 2021 AD (Board exam paper, January 2021 (Full Marks 36, answer any six)), TU BIM Business Statistics (STT 201) 2013 AD (Board exam paper, 2013 (Full Marks 36)), TU BIM Business Statistics (STT 201) 2014 AD (Board exam paper, 2014 AD), TU BIM Business Statistics (STT 201) 2015 AD (Board exam paper, 2015 AD), TU BIM Business Statistics (STT 201) 2016 AD (Board exam paper, 2016 AD), TU BIM Business Statistics (STT 201) 2018 AD (Board exam paper, 2018 AD), TU BIM Business Statistics (STT 201) 2019 AD (Board exam paper, 2019 AD), TU BIM Financial Accounting (ACC 201) 2015 AD (Board exam paper, 2015 AD), TU BIM Financial Accounting (ACC 201) 2016 AD (Board exam paper, 2016 AD), TU BIM Financial Accounting (ACC 201) 2017 AD (Board exam paper, 2017 AD), TU BIM Financial Accounting (ACC 201) 2018 AD (Board exam paper, 2018 AD), TU BIM Financial Accounting (ACC 201) 2019 AD (Board exam paper, 2019 AD), TU BIM Financial Accounting (ACC 201) 2021 AD (Board exam paper, 2021 AD), TU BIM Financial Accounting (ACC 201) 2014 AD (Board exam paper, 2014 AD), TU BIM Financial Accounting (ACC 201) 2013 AD (Board exam paper, 2013 AD), TU BIM Financial Accounting (ACC 201) 2012 AD (Board exam paper, 2012 AD), TU BIM Financial Accounting (ACC 201) 2010 AD (Board exam paper, 2010 AD) and TU BIM Financial Accounting (ACC 201) 2009 AD (Board exam paper, 2009 AD). Answers are written for this site; check them against your class notes.