Difficulty: Medium
Correct Answer: Keeps track of which general-purpose registers are available as base registers and what base addresses they contain.
Explanation:
Introduction / Context:
IBM System/360/370 assemblers use a base-displacement addressing model. Understanding how assemblers manage base registers is critical for writing and maintaining low-level code that addresses memory efficiently and relocatably.
Given Data / Assumptions:
Concept / Approach:
While programmers specify addressing forms, the assembler maintains a base register table derived from USING statements. This table records which general-purpose registers act as bases and the corresponding base addresses, enabling translation of symbolic references into correct displacements. Multitasking or multiple-program residence is an OS feature, not an assembler language property, and “control programs” refers to OS components, not the assembler itself.
Step-by-Step Solution:
Verification / Alternative check:
Assembler manuals document the base register table and relocation assistance provided during assembly based on USING/DROP.
Why Other Options Are Wrong:
Explicit syntax (option A) is true in practice, but the distinctive assembler function is the tracking of base registers (option B). Options C and D concern operating system behavior, not assembler responsibilities.
Common Pitfalls:
Assuming the OS, not the assembler, resolves addressability issues; or conflating base management with runtime register contents.
Final Answer:
Keeps track of which general-purpose registers are available as base registers and what base addresses they contain.
Discussion & Comments