A-A+
设某机器共能完成78种操作 若指令字长为16位 试问单地址格式的指令其地址码可取几位?若想使
问题详情
设某机器共能完成78种操作,若指令字长为16位,试问单地址格式的指令其地址码可取几位?若想使指令的寻址范围扩大到216,可采用什么办法?举出三种不同的例子加以说明。
请帮忙给出正确答案和分析,谢谢!
参考答案
正确答案:根据78种操作可求出操作码的位数为7位则单地址格式的指令地址码占16-7=9位。欲使指令的寻址范围扩大到216可采用以下三种寻址方法。(1)若指令字长等于存储字长均为16位则采用间接寻址可使寻址范围扩大到216因为间址时(设非多次间址)从存储单元中取出的有效地址为16位。(2)采用变址寻址并设变址寄存器XR为16位则有效地址EA= (xR)+A(形式地址)即可使寻址范围扩大到216。(3)采用基址寻址并设基址寄存器BR为16位则有效地址EA=(BR)+A即可使寻址范围扩大到216。
根据78种操作,可求出操作码的位数为7位,则单地址格式的指令地址码占16-7=9位。欲使指令的寻址范围扩大到216,可采用以下三种寻址方法。(1)若指令字长等于存储字长均为16位,则采用间接寻址可使寻址范围扩大到216,因为间址时(设非多次间址)从存储单元中取出的有效地址为16位。(2)采用变址寻址,并设变址寄存器XR为16位,则有效地址EA=(xR)+A(形式地址),即可使寻址范围扩大到216。(3)采用基址寻址,并设基址寄存器BR为16位,则有效地址EA=(BR)+A,即可使寻址范围扩大到216。