Published on

从与非门到图灵完备:我的极客旅程

Authors
  • avatar
    Name
    YiSen
    Twitter

作为一名计算机科学与技术专业的学生,我一直苦于难以将理论知识转化为实践始终是个挑战。直到最近,我完成了一款名为“图灵完备”的游戏,这让我对底层架构的设计与实现有了全新的理解。今天,我想分享这段精彩的旅程。

游戏背景:从基础电路到完整架构

图灵完备是一款极具技术深度的游戏,它以解锁电路元件开始旅程,逐步引导玩家理解如何从基础逻辑门通向算术单元、存储器等复杂元件的道路,沿着这条道路最终学习如何搭建完整的处理器架构,构建出一台图灵完备的计算机,并编写汇编代码解决复杂问题。

游戏的核心流程如下:

  • 初期解锁逻辑门:从与非门开始,逐步解锁非门、或门、或非门、与门等基本元件。
  • 发展复杂电路元件:通过延迟线实现寄存器,以及三位解码器等高级元件的组合。
  • 发展自定义组件:游戏还允许玩家自定义组件,可以把之前的一些元件进行封装,实现如ALU算术组件和COND条件判断组件等等。
  • 设计两种架构
    1. Overtrue架构:采用一个字节的指令。指令码占用前两位,后六位分为两个三位地址参数。
    2. LEG架构:采用四个字节的指令。第一字节是指令码,第二、三字节为两个操作数,第四字节指定结果的存放位置。
  • 汇编代码解决实际问题: 完成计算机设计后,迎来了终极考验——使用自制架构,通过汇编代码解决一系列问题

收获与思考

在通关的过程中,我深刻感受到对处理器架构、汇编语言和电子元件彼此之间的具体联系产生更加深刻的理解,也了解高级编程语言中常见的条件判断、循环、函数等概念是如何在汇编和硬件层面具体实现的。甚至连数学也收获颇多,比如我原本知道的二进制最后一位代表的是该数的奇偶性,但倒数第二位是在我完成这个游戏后才总结出来是该数高斯和的奇偶性。真的能很深切感受到为啥图灵机会由一位数学家所创造出来。当汇编程序成功运行,解决了“接雨水”问题时,那种让我激动不已的感觉难以用言语表达!


这就是我的图灵完备之旅。如果你也对计算机组成原理感兴趣,我强烈推荐这款游戏,它将带你进入计算科学的深水区,用最本质的方式了解计算的奥秘!最后请看看我的水世界成就

image.png