《图灵完备》游戏攻略第二章:算术运算和存储器——存储器

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

第二章:算术运算和存储器

优雅存储

关卡解析

本关要求我们制作一个存储器,存储器会一直存储数据,直到写入端要求它更新。

留存数据无疑需要使用延迟线,但是延迟线只能保存一刻数据,所以我们要一直刷新它。我们先构成一个循环,延迟线会一直存储数据,直到它被关闭,如下图:

我们需要一个开关来控制它何时被关闭:

  • 新增的线是蓝色的。

当然这个开关现在起不到任何作用,我们需要把延迟线的输出值输入到开关上:

然后我们将待写入的值接入总线:

然后用一个开关来控制:

本关最终答案按

1位存储器

在本关中我们做出的电路是1位存储器,它可以储存1位数据。

存储一字节

关卡解析

我们先制作一个可以存储8位数据的存储器。我们只有1位存储器,所以我们需要8个。将8位数据拆成8个1位数据,存储到8个存储器中:

当然,我们还需要制作输出端,将存储的8个1位数据再转化为1个8位数据:

接下来就是如何控制,它有3个要求:
  1. 输入0亮:读取并输出
  2. 输入1亮:写入到存储器
  3. 输入0亮:启用输入端

我们先制作第二个。只要将输入1连接到每个1位存储器即可:

此时,将输入0连接至输出端下方即可完成一和三:

本关最终答案

8位存储器

我们本关制作出的整个电路是8位存储器,可以存储1字节的数据。

1位解码器

关卡解析

本关的电路搭建特别简单,不需要过多解释,直接看图即可:

本关最终答案

1位解码器

本元件就相当于上面的电路,可以在两路输出中选择一路。



3位解码器

关卡解析
我的方法是一路一路制作,8个输出端口分别对应一套电路。注意对照下方的真值表。

我们先制作第一套,此电路可以确定是不是三个红,如果是就输出到输出1:

然后制作第二套,因为真值表的第一行是绿色,所以我们不用放置非门:

然后再制作第三套,第二路是绿,因此第二路不需要非门:

像这样将所有电路全做出来,一共8套电路:

然后我们将8个电路结合起来,注意不要连错孔:

本关最终答案 方案A

宽带

这里提供一下另一种解法:

本关最终答案 方案B -小渊xyz
你可以先理解一下这种解法,我们之后在“小盒子”那关会用到。“宽带”这个名字是我取的,只是因为这个带子很宽,我不知道现实里这个东西叫什么。
  • 点击元件后按空格可以旋转。

3位解码器

本关我们获得了3位解码器,这个元件输入3个数据,根据这3个数据在那条路决定在哪条路输出。

逻辑引擎

前言

本章已经步入尾声,加油!

编码、解码

我们发现,本关4个指令,编入了0~3这4个数字,这就是编码。我们用解码器可以对其进行解码。

关卡解析

  • 请一定要明白我们每步为什么要这样做,这关结束时的电路极其复杂,如果你不明白原理很有可能抄都抄不出来。

我们先将指令输入端进行解码,用到我们上一关制作的3位解码器:

这样,4种指令,就分别对应解码器的前4个输出口。

我们使用8位或元件直接处理两个数据,然后将处理结果加上8位开关,与解码器输出的OR指令路连接:

现在来制作第二条指令,即按位与非,和我们之前制作的按位或和按位非的电路相似,只是把逻辑门换成了与非门,我们用1举例:

后面的也这样搭建,然后在结果路放置8位开关,让指令NAND路控制开关,将结果输出到总线:

  • 注意本关空间有限,最好不要做的太乱,我们还需要制作2条指令。

然后制作按位或非,我们已经有按位或和按位非,把它们组合就行:

然后在结果路加开关,让NOR指令路控制,接入总线,适当调整位置节省空间:

现在我们再制作按位与的电路即可:

也是同样,加开关,让指令AND控制,接入总线:

本关最终答案
运行后发现正确无误。
  • 长得好像一个蓝头发的人头......
  • 注意:本关电路不要删除之类的,我们之后的“算术引擎”还会用到!

函数

  • 本关创建的电路有点像是汇编里的函数概念,0、1、2、3分别是函数,而两个输入端就是参数。了解一下即可,后面会用到。
  1. def OR(x,y):                 #定义OR函数
  2. return(按位或操作(x,y))
  3. def NAND(x,y):               #定义NAND函数
  4. return(按位与非操作(x,y))
  5. def NOR(x,y):                #定义NOR函数
  6. return(按位或非操作(x,y))
  7. def AND(x,y):                #定义AND函数
  8. return(按位与操作(x,y))
  9. print(OR(183,180))           #调用OR函数
-----------控制台----------
75
---------------------------

8位与、8位非、8位或非

我们获得了这关里制作的3个按位操作元件:



小盒子

关卡解析

这关的难点在于空间很小,我们要想尽办法节省空间。

还记得我们在前讲的“宽带”吗?首先我们先将地址数据使用解码器导出成4条线路:

我们知道,用A、B、0、1可以组成4个地址,分别的 (A,0), (A,1), (B,0), (B,1),我们将这4个地址用与门判断出来:

我们在输入端设置4个8位寄存器,输出结果直接接入总线,然后输出到输出端:

接下来我们只需要做到“控制”即可。需要8个与门,空间有点小,你看怎么能摆下:

左边4个与门用于判断是否读取,我们先接入数据:

然后我们把输入1接进去,就相当于“如果收到读取的信号,就让信息通过”:

右边四个与门也类似,用于判断是否写入。先接入数据(我用的是深蓝色的线):

将输入2接入到四个与门,就相当于“如果接收到要写入的信号,就让数据通过”:

最后我们再来一条线(白线),将读取信号输入端和输出端开关连接。注意你很有可能没办法连接这条线,因为空间被填满了,你需要让其他东西“让开”。在移动其他元件时一定要将它的输入输出一起移动,不要导致断开和短路,如果出问题了可以按Ctrl+Z撤销操作。最后做出来是这样:

本关最终答案

256字节随机存储器

可以用于存储数据的元件,之后会用到。

计数器

关卡解析

首先我们制作一个这样的结构:

寄存器会始终把数据存储并输出,并且直接输出到输出端。到下一段后,因为有ADD在,会+1(高电平就是1),然后再输出出来,重新写入到寄存器。左侧的高电平时为了始终启用寄存器的读取和写入功能。这样,在不覆盖的状态下,寄存器会每刻都+1。

现在我们来做数据覆盖。我们只需要用到一个选通器,选择让哪个数据覆盖到寄存器即可。注意不要弄错选通器的输入端口:

本关最终答案

8位计数器

我们获得了8位计数器元件,其实就是我们本关制作的电路。它会每秒+1,直到有新的数据覆盖。



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

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


以下三章为《图灵完备 Turing Complete》游戏手把手教程(教程原创为知乎:淘气喵w,特此说明)
第一章:基础逻辑电路

第二章:算术运算和存储器

第三章:处理器架构

24小时热点

以太坊最新价格走势如何?

以太坊(Ethereum)自2015年推出以来,其价格走势一 ...

1991

区块链圈小菜鸡

Pi币挖矿一天能赚多少?新手必看的Pi Network生态解析

Pi币是近年来备受关注的新型加密货币,其独特的手机挖矿模式和 ...

8197

树图链

普华资本

一、普华资本简介 普华资本是中国最大的投资管理公司之一 ...

125845

NFTKEY

一文读懂挖矿产业链:矿工、矿池、矿场

矿工 · 矿工介绍 在 ...

215549

沸寂pheagee

一分钟涨跌交易平台是做什么的,涨跌交易平台正规吗?

一分钟涨跌交易平台属于金融交易,主要是快速买快速卖,用户可以 ...

1992

波场区块链浏览器

通过比特币挖矿获得收益指什么行业

比特币挖矿作为一种获取加密货币的方式,在过去几年中备受关注。 ...

4716

波场区块链浏览器

怎么把sol币提到小狐狸钱包的方法分享

core主网上线,很多人都希望将core主链网络添加到自己的 ...

13928

波场区块链浏览器

快速教你数字人民币怎样使用

数字人民币通过数字人民币app就可以进行使用,方便人们进行支 ...

15038

波场区块链浏览器

onto钱包介绍以及转出到火币流程指南

onto钱包是ontology提供的一款数字资产管理工具,它 ...

3090

波场区块链浏览器

比特币中国2024能合法买卖吗,央行对虚拟币的政策

截止到2024年,比特币在中国依旧是被定性为虚拟商品,是无法 ...

190090

波场区块链浏览器

热点专题

区块链网是什么

中国区块链价值评价中心 中国区块链价值评价中心于2 ...

5272677

知信链

元界(Metaverse)

元界(Metaverse)是一个去中心化的公有区块链项目,元 ...

969574

WEEX数字货币

BTC123

BTC123(www.btc123.com)成立于2011年 ...

776597

Kusama 测试网

DAC币——达芬奇Davinci Coin

达芬奇项目的平台是通过叫作"Dchain"的自身区块链把可以 ...

700103

Mechanism Capital

Bitfinex(香港B网)

Bitfinex交易平台目前仍处于试运营阶段,该平台由iFi ...

687446

Hi元宇宙

中币网zb——中币交易所

ZB.com是一个全球化的数字货币交易所,目前已获得泰国和迪 ...

667062

中币交易所

MCO币

MCO,前为Monaco,朝着让每个钱包都载有加密货币的愿景 ...

666439

第九空间

熊猫矿机(PandaMiner)

熊猫矿机(PandaMiner),企业文化背景为:其一,熊猫 ...

651446

金融界区块链频道

陈景润证明哥德巴赫猜想1+2的论文

大偶数表为一个素数及一个不超过二个素数的乘积之和 。 本 ...

629090

鲸探

最全传销名单,请告诉家人朋友,别让他们上当受骗后赔到血本无归

因为互联网的发展,让现代传销具备了更强的隐蔽性,更让社会经验 ...

610214

律动 BlockBeats