第 17 题
下列关于基址寻址和变址寻址的说法中,正确的是( )。 I. 两者都扩大指令的寻址范围 II. 变址寻址适合于编制循环程序 III. 基址寻址适合于多程序设计 IV. 基址寄存器的内容由操作系统确定,在执行的过程中可变 V. 变址寄存器的内容由用户确定,在执行的过程中不可变
A. I、II 和 III B. I、II 和 V C. II 和 III D. II、III、IV 和 V
[tag_link]
正确答案:A
基址寻址和变址寻址都是通过将寄存器内容与指令中的地址字段相加来形成有效地址,这可以突破指令地址字段的长度限制,从而扩大寻址范围,因此说法 I 正确。 变址寻址中,变址寄存器的值可以在程序执行中动态变化,便于遍历数组或重复执行类似操作,非常适合编制循环程序,说法 II 正确。 基址寻址通过基址寄存器实现程序重定位,使操作系统能将程序加载到内存任意位置,利于多道程序设计中的内存管理,说法 III 正确。
说法 IV 错误,因为基址寄存器的内容通常由操作系统在程序加载时设定,但在程序执行过程中一般保持不变,以确保地址翻译的稳定性。 说法 V 错误,变址寄存器的内容由用户程序设定,且在执行过程中经常变化(如在循环中修改),以实现灵活的数据访问。 因此,正确说法为 I、II 和 III,对应选项 A。