【问题标题】:How to construct this turing machine?如何构建这个图灵机?
【发布时间】:2018-01-28 11:30:57
【问题描述】:

我们如何构造 TM 使其接受(仅给出描述):

a + b = c

一个。 b = c

输入的格式为 a#b#c。

a,b 和 c 属于 {0,1}* 并且是正二进制无符号整数。

我知道如果输入是一元表示我们可以构造 TM,但是如果它是二元表示怎么解决呢?

【问题讨论】:

标签: computer-science automata turing-machines computability


【解决方案1】:

嗯,二进制加法和乘法比一元情况要复杂一些,但并不难。补充:

  1. 将两个最低位相加。如果和为零或一,这是结果的最低位。如果和为 2,则最低位为零,并且有进位。
  2. 转到下一个最低位。将两者和可能的进位相加。如果和为零或一,这是结果的当前位。如果和为 2,则当前位为零并且您有进位。如果和为 3,则当前位为 1,并且您有进位。
  3. 重复 2 直到处理完所有位。

对于乘法,您可以使用this one 之类的方法。如果您真的需要详细进行,这将是一些在 TM 上编程的工作。

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 2011-02-24
    • 2010-10-27
    • 1970-01-01
    • 1970-01-01
    • 2010-12-04
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多