During the course of execution of a program, the processor will increment the contents of the instruction
Question:
During the course of execution of a program, the processor will increment the contents of the instruction register (program counter) by one word after each instruction fetch, but will alter the contents of that register if it encounters a branch or call instruction that causes execution to continue elsewhere in the program. Now consider Figure 7.8.
There are two alternatives with respect to instruction addresses:
• Maintain a relative address in the instruction register and do the dynamic address translation using the instruction register as input. When a successful branch or call is encountered, the relative address generated by that branch or call is loaded into the instruction register.
• Maintain an absolute address in the instruction register. When a successful branch or call is encountered, dynamic address translation is employed, with the results stored in the instruction register.
Which approach is preferable?
Step by Step Answer:
Operating Systems Internals and Design Principles
ISBN: 978-0133805918
8th edition
Authors: William Stallings