第 17 题
下列关于各种寻址方式获取操作数快慢的说法中,正确的是( )。 Ⅰ. 立即寻址快于堆栈寻址 Ⅱ. 堆栈寻址快于寄存器寻址 Ⅲ. 寄存器一次间接寻址快于变址寻址 Ⅳ. 变址寻址快于一次间接寻址
A. Ⅰ和Ⅳ B. Ⅱ和Ⅲ C. Ⅰ、Ⅲ和Ⅳ D. Ⅲ和Ⅳ
[tag_link]
正确答案:C
Ⅰ. 立即寻址中操作数直接包含在指令中,无需访问内存或寄存器,因此获取速度最快; 堆栈寻址通常需要通过堆栈指针访问内存,涉及内存访问,速度较慢。 故立即寻址快于堆栈寻址,Ⅰ正确。 Ⅱ. 堆栈寻址需要访问内存,而寄存器寻址直接访问CPU内部寄存器,寄存器寻址速度更快。 因此堆栈寻址快于寄存器寻址的说法错误,Ⅱ不正确。 Ⅲ. 寄存器一次间接寻址先从寄存器获取地址,再访问内存一次; 变址寻址需计算地址(基址加偏移量)后再访问内存一次。 由于变址寻址多了地址计算步骤,寄存器一次间接寻址通常更快,Ⅲ正确。 Ⅳ. 变址寻址经过一次地址计算和一次内存访问; 一次间接寻址(通常指内存间接)需两次内存访问(先取地址再取操作数)。 因此变址寻址快于一次间接寻址,Ⅳ正确。 综上,Ⅰ、Ⅲ和Ⅳ正确,对应选项C。