某计算机字长为16位,主存为64KB,指令采用单字长、单地址结构,要求至少能支持80条指令和直接、间接、相对、变址等4种寻址方式。请设计指令格式并计算每种寻址方式能访问的主存空间范围。
解:根据题干条件,指令采用定长、单地址结构。另外,由于要支持4种寻址方式,因此要为地址码字段设置专门的寻址方式字段。
操作码字段的位数为7位,这样最多可支持128条指令,满足至少支持80条指令的要求。要支持4种寻址方式且每次只能使用其中的一种寻址方式,寻址方式的字段需2位。所以单地址字段的位数为:16-7-2=7位。
其中,OP为操作码字段,7位;I为寻址方式字段,2位;.D为形式地址字段,7位。4种寻址方式的寻址范围如下所示。
I=00:相对寻址,E=PC+D,寻址范围为0~65535(程序计数器PC为16位)
I=01:变址寻址,E=R[X]+D,寻址范围为0~65535(变址寄存器X为16位)。
I=10:直接寻址,ED,寻址范围为0~127。
I=11:间接寻址,E=(D),寻址范围为0~65535。
PS:本人也是在学习过程中,如有不对的地方,希望大家可以指正,谢谢!