我似乎回想起曾经读过tAOCP分册之一的Knuth关于计算整数商和余数的讨论。 我的记忆是,他声称不可能一无所有地计算一个,并且他认为结果都应可供程序员使用。 问题是大多数编程语言都迫使程序员计算类似q = a / b然后r = a%b的内容,但是在CPUB的幕后,两次进行相同的计算,这很浪 ...
我似乎回想起曾经读过tAOCP分册之一的Knuth关于计算整数商和余数的讨论。 我的记忆是,他声称不可能一无所有地计算一个,并且他认为结果都应可供程序员使用。 问题是大多数编程语言都迫使程序员计算类似q = a / b然后r = a%b的内容,但是在CPUB的幕后,两次进行相同的计算,这很浪 ...
我有一个作业,我必须在 MMIX 中输入并返回完全相同的内容,但所有空格都必须是换行符。 我已经尝试了大约 2 天,并且已经弄清楚如何接受输入以及如何将其输出到控制台。 但是第二部分我没有完成,作业明天就要交了。 这是我到目前为止所拥有的: ...
我使用此站点的 MMIX:http: //mmix.cs.hm.edu/我使用此代码让控制台打印“Hello World”“times”时间: 我想知道为什么这只会产生其中的 3 个。 查看代码,因为我乘以 3,所以应该打印 3 次 Hello World。 然而,经过仔细检查,我注意到“00000 ...
在MMIX机器的文档mmix-doc第3页第4段中: 我们使用符号 代表由 从位置开始的连续字节 。 (符号 表示将k的最低有效t位设置为0,并且仅保留结果地址的最低64位。 ... ...
我希望能够学习MIX / MMIX,但是我不知道有人会用来编写它的工具链。 我过去曾将uVision用于与ARM汇编器相关的事情,MIX / MMIX是否存在这样的等效功能? ...
是否可以为MMIX架构编译Rust? 根据我对Rust编译器的理解(肯定不是很多),它使用LLVM作为后端; 来自C和gcc背景,我知道gcc可以生成MMIX可执行文件,但我不知道如何从rustc获得相同的结果。 有谁知道怎么会这样做? 或指向我应该开始搜索的地方? 谢谢 ...
我正在尝试为MMIX汇编语言创建语法定义文件。 Sublime Text 3使用这些文件来突出显示文本/源文件的语法,并且最近在YAML中编写。 下面就说明^\\s+被强调正确的, ^\\s+ADD\\s+的例子。 (fltr:语法定义文件,MMIX源代码) 但是, 标签和空白 ...
根据NEG和NEGU的定义, 假设$Z = s(-1)或u(2^64 - 1) 。 然后,第一个操作码将在Y = 0时将值1放入$X寄存器,而最近的操作码将给出相同的结果,因为u(-(2^64 - 1)) mod 2^64 = 1 。 我对么? 当$Z = -2^63时, NEG指 ...
我想知道如何在交互模式下使用mmix来在我要求查看它们时显示寄存器的内容。 例如,我有一个简单的mmix程序: 我可以运行mmix -i myprog.mmo来获取输出: 这一切都很好,很好。 但是,如果我想在交互运行中检查某些寄存器的内容,我该怎么办? 另外,如何看到十六 ...
我试着理解mmo目标文件格式是如何工作的,它用于Don Knuth的教育MMIX架构。 我没有买过MMIXware ,所以我必须从汇编程序和模拟器的文字源文件中猜出大部分细节。 对象格式使用特殊的三元搜索trie来存储符号表。 看看代码,我不太明白它是如何工作的。 有人可以向我解释一 ...
我根据http://www.bitrange.com/mmix/install.html为 mmix 编译了 gcc 4.6.0。 在我尝试了他们简单的 hello world 或任何其他对 printf 的调用超过第一个字符串之后,只有第一个字符串被打印出来。 例如 生成的程序集如下所示: ...
假设,我写了一个小库,可能实现“ fprint”。 教我MMIX的书(Das MMIX-Buch,德语)总是将整个lib复制到新程序中,但是我不喜欢这种方法。 有什么方法可以将库组装成一个目标文件,将主程序组装成另一个目标文件,并将这两个链接在一起? 这个怎么做? ...
我正在学习 MMIX,所以我尝试制作一个简单的程序来添加一个并打印结果。 不幸的是它不打印任何东西。 这是我的程序: 我究竟做错了什么? ...
如何将MMIX的CVS回购到CVS / Git? 我知道如何通过git clone URL在github上git clone URL ,但是我以前从未真正使用过sourceforge。 他们使用对我来说是新的CVS。 我失败的尝试 在尝试先由CVS下载存储库时,我在CVS ...