我碰巧需要一个用于图灵机的算法,它读取一串 0,然后在磁带上写入二进制数。
我意识到在实践中机器实际上不会计算 0,但我对如何做到这一点感到非常困惑。
我想首先我需要标记二进制数以 X 或其他东西开头的位置,然后只为第一个 0 写一个 1,如果最低有效位为 0,则为后面的每个 0 写一个1 但如果是 1 呢?也许把它变成 0 并继续把所有的 1 变成 0 直到我找到一个 0 或空白变成 1?再说一次,在那种情况下,不管LSB如何,都是一样的,因为我会做同样的事情,只有0是第一个位置......
嗯……橡皮鸭……