打印序列01010101..., 在前面加一个小数点, 这就是二进制的1/3了, 而将0和1的位置互换之后, 就是2/3了. 来看看图灵是如何实现这一功能的....在这个序列中, 1的数量会依次加一, 也就是说要让这台机器再这个一维的纸带上记住前面打印了多少个1. 那么图灵是如何做到这一点的呢?
终于, 前面没有用到的非数字格出场了, 它用来辅助打印....完美, 此时其实已经发现了, 图灵的方法是在连续1的后面添加x标记, 每个x标记都对应一格末尾的1. 以此来获得上一次打印1的数量.
至此, 这台简单的机器已经能够记忆一些内容了....每次计算新的一位, 都会调用new状态将扫描格重置到最左边的数字上:
状态 符号 操作 切换状态
new a R mark_digits
new else L new
假设此时, 纸带的状态:
现在对各个数字位进行标记...若相乘之后的结果是1, 则向过程和加1.
若找到的第一个数字是1, 则转换去寻找第二个数字.