快捷搜索:  下载  as  xxx  BAYC ​  /search.php

bitpie.com官网下载|《图灵完备》游戏攻略第三章:处理器架构 - 区块链网

《图灵完备 Turing Complete》游戏攻略保姆级详解。

第三章:处理器架构

前言

在本章中,我们要学习架构处理器,最后我们会制造出一台图灵完备的计算机!

算术引擎

关卡解析
  • 请一定要明白我们每步为什么要这样做,这关结束时的电路极其复杂,如果你不明白原理很有可能抄都抄不出来。有必要的话,你可以先补习“逻辑引擎”那一关。
还记得我们之前造出的很像一个人头的电路吗?本关会沿用我们在“逻辑引擎”那一关制作的电路,我们会在它的基础上为它添加加法和减法运算的能力。本关其实并不难,只需要为它添加两个模块即可。
  • 另外,我推荐你先把这个电路复制一份,以免操作错误导致发生不可逆的后果。点击左上角的“切换电路图”,在里面可以复制电路。

首先,我们需要在红框位置再新增加两条线,来解码新的ADD(加)和SUB(减)指令,像这样:

我们使用8位加法器将两个数据相加,然后设置8位开关,接入总线。开关要让ADD指令路控制。像这样,注意红框位置:

减法和加法类似,只需要在8位加法器的输入2前面加上一个8位取反器,让数字变成负数。其他的都一样,开关照样接,让SUB指令路控制,然后接入总线:

现在我们就做好了一个具有加法和减法功能的计算引擎,这是整体截图:

本关最终答案

寄存器之间

前言

从本关开始,我们可能会一直沿用同一个电路,所以请尽量做的简洁。你可以适当写一些注释,以免忘记自己做的是些什么。 本关题目较长,请仔细阅读。

元件工坊

本关开始我们可以自己创造函数(元件),也就是游戏里说的“元件工坊”。我们制作好的元件会被“浓缩”。例如我们之前做的人头,压缩成元件后就是这样:

关卡解析

我们要先理解这些寄存器之间的结构:INPUT-R0-R1-R2-R3-R4-R5-OUTPUT

首先,我们将代码解码为宽带:

把它延伸下去:

我们规划,6个寄存器由上至下分别是R0~R5,并且连接获取相应的数据。把INPUT的开关连接到左侧线路上,OUTPUT的开关连接到右侧线路上。这样:

将各寄存器及INPUT、OUTPUT连接到总线:

本关最终答案

元件工坊

  • 这并不是关卡,此处不做解读。你可以在目录中查找之前解释过的。


指令解码器

关卡解析

题目说白了就是要让我们做一个“可以根据不同二进制数决定要启用什么计算机功能”的电路。其实再一想,就是前几关我们做过的解码器,但是要连接到具体的指令上。我们先做解码器:

然后再连接到4个输出即可:

本关最终答案

指令解码器

它会作为元件加入元件工坊。

计算单元

关卡解析

在“寄存器之间”关卡的成品基础上,添加元件工坊里的指令解码器(DEC):

将DEC的第三个端口加非门,连接到两个3位解码器的右端,防止之后的宽带或总线短路:

添加元件工坊的算数引擎(ALU),并将指令输入端连接至顶部端口,用于向ALU输入指令:

将ALU的输出端添加8位开关来防止总线短路,让DEC的第二个输出端口控制开关,此时我们就可以直接将ALU的输出结果接入总线了:

题目说将REG1和REG2作为要进行操作的数字,输出到REG3。所以我们先将REG1和REG2连接到ALU。注意REG1要连接ALU的输入1端口,REG2要连接ALU的输入2端口:

因为ALU的计算结果会直接输出至总线,所以我们只需要设置“何时开启REG3的写入功能”。由于REG3在本关要求的特殊性,我们添加一个或门,在原条件的基础上,再加入一个条件。满足任意一个条件,就开启REG3的写入功能。一端依然连接至宽带,另一端连接至DEC的第二端口。如下图:

这样就完成了,本关整体电路如下图:

本关最终答案

条件判断

关卡解析

关卡说明说白了就是“如果数字符合条件就输出绿色”。

先对两侧都进行拆解,并在指令侧制作宽带:

要将题目里的情况全部考虑到,我们需要制作更多宽带:

然后再逐个进行与门逻辑判断,再用或门连到输出端:

本关最终答案

注意这个地方不要忘了连,我刚才没连上

错误检修

条件判断器(COND)

我们本关制作的元件被加入了元件工坊。它要求输入一个条件和数据,在数据满足条件的情况下输出1。


程序

关卡解析

本关很简单,只需要使用8位计数器+PROGRAM替代原来的指令输入端即可:

本关最终答案

立即数

关卡解析

  • 请先理解关卡要求。

首先我们改造一下REG0的写入条件,用一个或门。原来宽带上的还是在宽带上,但是当DEC的第一个端口开启时REG0的写入端也要开启。像这样:

本关最终答案

图灵完备

前言
  • 经历了这么多后,在本章的最后一关,我们终于能在本关制造出一台图灵机了!
关卡解析
  • 请先阅读清楚关卡说明!

首先我们在REG3旁放置一个元件工坊的条件判断器(COND),将REG3内储存的值不断输入到COND的“输入”端。将PROGRAM输入的值输入到COND的“条件”端(亮绿色线):

将REG0连接至计时器的写入端:

将COND的判断结果和DEC的第四输出端口接入到一个与门进行判断,然后输出至计时器的“步进/擦写模式”接口(注意几个画红框的地方):

这样就完成了。

如果你运行后发现明明电路都一样,但是却运行错误。检查发现计数器莫名其妙出现奇怪的数字(比如“7”),那么请你点击计数器,在下方将单步增量重新调整为1(即只开启最右侧),然后再运行。

恭喜你!造出了一台图灵完备的计算机!让我们来看一下我们携手制作的计算机:

本关最终答案

图灵完备

第四章:编程

前言

我们已经造出了一台图灵完备的计算机,继续加油,相信之后的路会更好走。


《图灵完备 Turing Complete》游戏攻略保姆级详解

你可以通过《图灵完备》这款游戏,学习处理器架构,搭建自己的伟大作品。游戏闯关模式的最终目标是搭建一台可以运行的计算机。我将会开始更新这款游戏的攻略,详细解析每一关的通关思路,并且讲解背后的原理。

以下三章为《图灵完备 Turing Complete》游戏手把手教程(教程原创为知乎:淘气喵w,特此说明) 第一章:基础逻辑电路 第二章:算术运算和存储器 第三章:处理器架构

您可能还会对下面的文章感兴趣: