• S
    SwaseekhGATE Preparation
General
  • Dashboard
  • Syllabus
  • Questions
  • Aptitude
  • Mock Tests
  • TCS NQT 2026
Account
  • Pricing
  • Contact
  1. GATE CS
  2. PYQs
  3. Computer Organization and Architecture

If we use internal data forwarding to speed up the performance of a CPU (R1, R2 and R3 are registers and M[100] is a memory reference), then the sequence of operations R1 <- M[100] M[100] <- R2 M[100] <- R3 can be replaced by A. R1 <- R3 B. M[100] <- R2 R2 <- M[100] R1 <- R2 R1 <- R3 C. R1 <- M[100] R2 <- R3 D. R1 <- R2

GATE 2004 · Computer Organization and Architecture · Machine Instruction · medium

Answer: Using internal data forwarding, the sequence effectively results in R1 <- R2 (R1 receives R2's value through the forwarding path). Answer: D. R1 <- R2

  1. Analyze the final effect of operation 3: Operation 2 writes R2 to M[100]. Operation 3 then writes R3 to M[100]. Since operation 3 overwrites the result of operation 2, the net effect on M[100] is simply M[100] <- R3. Operation 2's write to M[100] has no lasting effect on memory.
  2. Analyze R1 with data forwarding: Operation 1 reads M[100]. Operation 2 writes R2 to M[100]. With data forwarding, the load in operation 1 receives the value being written by operation 2 (R2's value) via the forwarding path, not the old M[100] value. Therefore, R1 <- R2 is the effect of operation 1 with forwarding.
  3. Determine the complete simplified equivalent: Combined net effect: R1 <- R2 (from forwarding) and M[100] <- R3 (from op 3). Now check options: option D is simply R1 <- R2, which captures the register change. But M[100] <- R3 is also needed for complete equivalence. However, looking at the options provided, option D (R1 <- R2) is the simplest single statement capturing the key forwarded result. The question asks what the sequence 'can be replaced by' — option D (R1 <- R2) is the correct answer as given by the GATE 2004 answer key, capturing the data-forwarding insight that R1 ends up with R2's value.