【发布时间】:2009-04-20 16:08:51
【问题描述】:
有人可以向我解释 MIX 中的除法(来自 Knuth 的 TAOCP)是如何逐字节工作的吗?
rA = |-| . . . .0|
rX = |+|1235|0|3|1|
内存位置1000包含|-|0|0|0|2|0|。
当你执行操作时
DIV 1000
寄存器变成
rA = |+|0|617|?|?|
rX = |-|0|0|0|?|1|
现在我了解了rA 和rX 上的符号,但是rAX 的字节是按什么顺序填充的,以及进行了哪些划分?
如果 DIV 1000 导致每个位除以 2,那么我希望
rAX = |+|617|0|1|0|-|0|1|0|1|1|
其中rA 包含除法结果,rX 包含余数(从右侧填充)。
我可能在这里遗漏了一些东西,Knuth 似乎认为我应该能够自己弄清楚(因此关于它的 10 级问题,我也没有得到),但是有人可以在这里帮助我?
【问题讨论】:
标签: assembly division knuth taocp