是的,你是对的
至少如果R[IR[13]] 表示%ir 的bit 13 并且不是编号为 IR[13] 的寄存器,它只能是r0 或r1 因为 IR[13] 有点。
更详细的分析:
第 1 行
A AMUX B BMUX C CMUX WR RD ALU
Binary 100101 0 000000 0 100001 0 0 0 1100
Meaning 37 MIR 0 MIR 33 MIR No Wr. No Rd. SEXT13(A)
COND JUMP ADDR
Binary 000 00000000000
Meaning Use Next Address 0
编码: r33 = SEXT13(r37),移动到下一个微码位置。
第 2 行
A AMUX B BMUX C CMUX WR RD ALU
Binary 000000 0 100001 0 100001 0 0 0 1100
Meaning 0 rs1 33 MIR 33 MIR No Wr. No Rd. ADD(A,B)
COND JUMP ADDR
Binary 110 11100000001
Meaning Use Jump Address 1793
编码: r33 = ADD rs1, r33,移动到微码位置 1793。
第 3 行
A AMUX B BMUX C CMUX WR RD ALU
Binary 000000 0 000000 0 100001 0 0 0 1100
Meaning 0 rs1 0 rs2 33 MIR No Wr. No Rd. ADD(A,B)
COND JUMP ADDR
Binary 101 11100010010
Meaning Use Jump Address if IR[13] = 1 1810
编码: r33 = ADD rs1, rs2,如果设置了 %ir[13],则移动到微码位置 1810。
其中rs1和rs2是%ir的指令中指定的寄存器。