百科问答小站 logo
百科问答小站 font logo



你无意中发现过哪些图灵完全的系统? 第1页

  

user avatar   xylet 网友的相关建议: 
      

Wireworld是著名的元胞自动机之一,当然也不是我亲自发现的,是由著名计算机科学家Brian Silverman在1987年提出的。它和其他元胞自动机具有类似的规则,也就是每帧每格的新状态只由上一帧该格及其邻近的格子决定。


Wireworld中格子的四种可能状态:
- 空(黑):始终为空。
- 电子头(蓝):下一帧变为电子尾。
- 电子尾(红):下一帧变为导线。
- 导线(黄):如果附近8格有一个或两个电子头,则在下一帧变为电子头,否则维持导线。

根据上述规则,一个电子头和一个电子尾组成的“电子信号”可以在一根呈直线的导线中单向传播,并和另一个电子信号迎头相撞时“湮灭”。不仅如此,电子信号在遇到较为复杂的连接点时也会展现出不同的特性;如下图的二极管可以做到只允许信号从一边通过,而阻止另一边过来的信号。


在wireworld中,你可以只凭导线和一个或多个初始的电子信号制作出逻辑门,频率放大器,只读内存,触发器,锁存器等等基本电子元件。具体的实例示范可以参考下述网站:
karlscherer.com/Wirewor




只要你对计算机原理有足够的了解,在2D的wireworld里完全就能做出计算机来。而且wireworld的规则及其简洁,编写难度低,具有强烈的电路感,是图灵完备系统中非常美观的存在。



其他类似的图灵完备的元胞自动机还有兰顿蚂蚁等,有兴趣的可以研究一下。

至于我是怎么发现的。。。



你们知道有个手游叫the sandbox吗?(一度是我除了围棋以外唯一玩的手游)。它采用了wireworld规则来设计电路,不过游戏本身其实也是复杂元胞自动机的概念(包括落沙,水流处理等),是真正的“沙盒”游戏。评论里还提到了The Powder Toy,也是“沙盒”游戏非常好的示范。

等我学会了GPU编程,好想自己写一个巨大无比的sandbox来玩玩啊。




  

相关话题

  有哪些自己发现并证明的并自以为得意的初等数学定理? 
  学习数学一定要用抽象的思维去学吗? 
  为什么不把push ebp和mov ebp, esp的操作通过硬件方式做进call指令中? 
  怎么推导或证明 e^x 的导数是自身? 
  如何理解计算物理中的元胞链接列表(Cell Linked List)算法? 
  网站如何升级成https的? 
  怎么积∫[0, 1] ln(1+x²)/(1+x) dx? 
  我们在数学中为什么要引入复数? 
  如何看待知乎用户李归农嘲讽数学家华罗庚被驳斥无回应? 
  高三毕业生的选专业问题,有支持的吗? 

前一个讨论
什么是图灵完备?
下一个讨论
JSON 可以替代 XML,为什么网页不用 JSON 格式来写呢?





© 2024-05-11 - tinynew.org. All Rights Reserved.
© 2024-05-11 - tinynew.org. 保留所有权利