再看用于执行SHR RO(单操作数)指令使用的相应控制信号。对运算器的控制,应实现RO+O且结果右移一位后写回RO,故可使I2~I0选011(0、B组合),I5~I3选000(加运算),I8~I6选101(不可选100,这会使Q寄存器也同时右移,不是我们所需求的)。B口内容来自指令寄存器IR的IR1和IR0两位。
此时不可忘记,还应使SCi为00,SSH为00(逻辑移位控制功能,即在I8~I6为101编码时,SSH为00就实现通用寄存器的逻辑移位控制功能,I8~I6为000~011编码时,SSH为00则无任何移位功能;SST应为101,使通用寄存器最高位移入0值,最低位移入状态触发器C中。
对其他部件的控制,应使DC1和DC2均为000。/MIO、REQ和/WE为100码。
与SHR指令类似处理的是SHL指令,只需将I8~I6从101改成111,其它各控制信号编码均保持不变即可。
与上述两条指令相类似的还有RCR和RCL两条指令,在进行扩展机器指令的实验中可由学生自己实现,它使标志触发器C与一个通用寄存器一起进行循环移位,即只要将SSH从00变成01,其他各控制信号的编码保持不变即可。
|
|