这个Mac-1代码是什么意思?

时间:2012-03-10 20:26:21

标签: computer-science organization

这是执行Mac-1指令(微编程)的说明:

100: alu := ac; if z then goto 0;
101: sp := sp + (-1);
102: mar := sp; mbr := pc; wr;
103: pc := band(ir,amask); wr; goto 0;

有人可以告诉我它在做什么以及为什么这样做?我所知道的只是第100行,它检查累加器的内容是否为零。如果它为零则跳转到子程序。

1 个答案:

答案 0 :(得分:0)

第101行操纵堆栈指针(至少是sp看起来的那个) 第103行看起来正在改变程序指针(这就是pc看起来的样子)。

至于细节,抱歉,不知道wrmarmbr是什么,所以需要更多背景。

副手,它看起来像是“接受中断”或“执行函数调用”的一部分(前者比后者更多)。