Windows 计算机编程的艺术
我正在学习计算机编程艺术(Knuth的)混合指令 我试图理解以下Windows 计算机编程的艺术,windows,Windows,我正在学习计算机编程艺术(Knuth的)混合指令 我试图理解以下MUL 1000说明: | + | 1 | 1 | 1 | 1 | 1 | [rA before] | + | 1 | 1 | 1 | 1 | 1 | [Cell 1000] | + | 0 | 1 | 2 | 3 | 4 | [rA after] | + | 5 | 4 | 3 | 2 | 1 | [rX After] 有没有办法知道为什么rA和rX得到了该值 请帮忙 MIX的乘法指令定义为: M
MUL 1000
说明:
| + | 1 | 1 | 1 | 1 | 1 | [rA before]
| + | 1 | 1 | 1 | 1 | 1 | [Cell 1000]
| + | 0 | 1 | 2 | 3 | 4 | [rA after]
| + | 5 | 4 | 3 | 2 | 1 | [rX After]
有没有办法知道为什么rA
和rX
得到了该值
请帮忙
MIX的乘法指令定义为:
MUL-ADDR,i(0:5)-->(rA,rX):=rA*内存[ADDR+rIi]代码>
这意味着累加器寄存器rA
和内存地址ADDR+rIi
的值相乘,其中rIi
是索引寄存器。乘法结果存储在累加器寄存器rA
和扩展寄存器rX
中
也有以下意见:
MIX是一种混合二进制-十进制计算机
因此,只需使用如下长乘法即可完成计算,其中Cell 1000
来自命令MUL 1000
,无需使用索引寄存器rIi
。标识符单元格1000
表示存储1
的地址,而不是值本身
rA: 1 1 1 1 1
Cell 1000: * 1 1 1 1 1
___________________
1 1 1 1 1
1 1 1 1 1
1 1 1 1 1
1 1 1 1 1
1 1 1 1 1
___________________
0 1 2 3 4 5 4 3 2 1
| rA | rX |
rA = 0 1 2 3 4
rX = 5 4 3 2 1
嗨,Swaminathan,如果这个答案解决了你的问题,请点击检查标记来考虑。这向更广泛的社区表明,你已经找到了一个解决方案,并给回答者和你自己带来了一些声誉。没有义务这样做。