5

我希望创建一个最小的、计算通用的字母数字 x86 操作码子集。最终,我希望子集包含尽可能少的指令,如果有多个最小子集,我也想知道这一点。该子集应该能够模拟可以使用整套字母数字指令编写的任何程序。说明应仅涵盖与字符“AZ”、“az”和“0-9”相对应的说明。

到目前为止,我认为 a push, pop, inc, dec, cmp, andje就足够了,但我确信还有一个较小的集合。我如何证明我生成的集合能够使用所有字母数字指令模拟任何程序?我怎么能证明这样的集合是最小的?有谁知道这样的指令子集是否存在?

4

2 回答 2

1

我不确定我是否得到您的问题,尤其是关于“字母数字”的部分,但我想指出众所周知,两者mov都是xor图灵完备的。

于 2015-09-25T10:41:06.583 回答
0

这只是一个指令!这里是证明

http://en.wikipedia.org/wiki/One_instruction_set_computer

为什么?只是因为“指令”是一个依赖于机器的概念。您不能仅仅因为没有这样的通用/绝对/原子指令而定义一小组指令:这完全取决于底层硬件:事实上,“真正的”图灵机是一个数学概念(一组规则)而不是物理机器

于 2012-11-08T13:53:06.107 回答