1

想在这里问一些我们的计算机结构考试的问题,以确保。下面是添加 Mic-1 IJVM 的命令。我们被要求编写新iaddtriple命令,该命令将添加堆栈顶部的三个单词并将其再次存储在堆栈中。

iadd1 MAR = SP = SP − 1; rd Read in next-to-top word on stack
iadd2 H = TOS H = top of stack
iadd3 MDR = TOS = MDR + H;wr;go to Main1 Add two top words, write to top of stack

我的回答是;

iaddtriple1 MAR = SP = SP − 1; rd 
iaddtriple2 H = TOS H = 
iaddtriple3 H = MDR = TOS = MDR + H 
iaddtriple4 MAR = SP = SP − 1;
iaddtriple5 MDR = TOS = MDR + H ; wr;go to Main1

我想问一下我的iaddtriple3步骤是否合法。我的一位朋友告诉我,H=blabla +H分配应该是非法的,因此不应使用。但是数据路径周期的时间图证明我是对的。提前致谢。

iaddtriple3  H = MDR = TOS = MDR + H 
4

1 回答 1

0

可以执行

H = H + MDR

由于可以在 C 总线位中指定 H,因此 ALU 操作为 A + B,B 寄存器为 MDR。实际的微指令是

0003C8000

前两个十六进制数字可以是任何数字,第三个十六进制数字是 0 或 8。

于 2015-11-11T04:53:42.097 回答