考虑一台具有2n−1n位字容量的主存储器M的虚拟计算机。中央处理器包含一个n位累加器AC和一个(n位1)-bit程序计数器PC.It具有两个n位指令的指令集,其中最左边的位是操作码,其余的位形成M中的地址。第一条指令被称为SUBS (Subract−store)。SUBS X导致发生以下微指令:
AC←AC−M(X)
M(X)←AC
PC←PC+1
第二条指令是一个无条件的分支跳转X,它使下面的操作发生:
PC←M(X(0 :N−2))
M中的字可以是指令(SUBS或JUMP),也可以是二进制补码中的定点二进制数。非正式地证明以下操作是可以编程的:
(a)存储器数据传输AC←M(X)和M(X)←AC。
(b)加法运算AC←AC + M(X)
发布于 2014-10-10 01:05:28
对于这两者中的任何一个,您都不需要跳转X指令。保留一个内存位置,比方说M( 0 ),它将保存值0。这是合理的,因为它说“M中的一个字既可以是指令,也可以是定点二进制数”。用这个来解决这个问题。
注意:要执行所需的操作,需要执行相当多的操作。
https://stackoverflow.com/questions/26272447
复制相似问题