Which of the following statements about the fetch-decode-execute cycle in a CPU are correct?
I. The Program Counter is incremented after each instruction is fetched so the CPU moves to the next instruction. II. The Control Unit is responsible for fetching instructions and placing them in the Instruction Register. III. The ALU is responsible for decoding instructions and determining which operation to perform. IV. Registers are used to permanently store the operating system's files for fast access. Identify the CORRECT option.Step-by-step Solution:
Let us evaluate the truthfulness of each statement: - **I. True:** The Program Counter (PC) holds the memory address of the current instruction and increments during the fetch cycle to point to the next instruction in sequence. - **II. True:** The Control Unit (CU) orchestrates the flow of data, fetching instructions from memory and placing them into the Instruction Register (IR) for decoding. - **III. False:** The Control Unit decodes the instruction, not the ALU. The Arithmetic Logic Unit (ALU) performs the execution phase (math and logical operations). - **IV. False:** Registers are extremely volatile and tiny units of memory used for holding data temporarily during execution. They do not store OS files permanently (that is the function of secondary storage like an SSD). Therefore, only statements I and II are correct.