泰拉瑞亚怎么接电路

什么是正太2022-09-17  22

泰拉瑞亚电路装置有哪些技巧 泰拉瑞亚电路装置技巧汇总

游戏中的电路装置是游戏的特点之一,很多玩家不知道这些电路装置有什么技能。今天,边肖为大家带来塔拉瑞亚的电路装置技巧总结,希望能帮助到所有玩家。

电路器件技能

使用故障逻辑门构建触发器

虽然有各种逻辑门可以用来进行基本的逻辑运算,如与门、或门与非门,但还有一种逻辑器件可能被一些初学者忽略或低估:故障逻辑灯(fault logic gate)。

故障逻辑灯的原理非常简单。将灯放在任何逻辑门(与、或、非、与或、与非、非)的顶部都会改变其输出信号的逻辑。故障逻辑门输出信号的方式是概率性的,这个概率取决于点亮的逻辑灯的数量与故障逻辑门和故障逻辑灯之间逻辑灯总数的比值。当故障逻辑门和故障逻辑灯之间只有一个逻辑灯时,故障逻辑门将有0%或100%的概率(即有和无)输出信号。

由于这个特性,故障光门(我从现在开始就这么称呼它,它实际上是由一个故障逻辑门和一个故障逻辑灯组成的最基本的元件)充当了一个晶体管(也可以看作是一个二极管),可以用来控制信号的传输方向(晶体管和二极管都是单向传输信号的)。

然而,故障灯门不仅可以用于简单的晶体管,还可以用于构建触发器。

触发器是可以存储状态(值)的逻辑设备。根据接收到的输入不同,不同类型触发器的状态变化也不同。

我将向您展示的第一个触发器是D触发器(D是数据):

d触发器将保持特定值,并具有两个输入;第一个输入(红线)是一个触发器,它将其存储值(绿线)设置为第二个输入(蓝线)的当前值。这样,您可以轻松地存储信息以备后用。

这种触发器的工作原理是故障逻辑光门有一个异或门。两个输入连接到同一个逻辑灯,只有当输入值(0和1)不同时,该灯才会打开。这里,输入和输出线连接到逻辑灯。当这些值不同时,触发器将导致输出值发生变化并与输入值相匹配。

d触发器易于平铺,这使得用单个触发器(信号输入)存储大量信息成为可能:

利用故障逻辑门灯构建SR锁存器

除了D触发器,另一个有用的触发器是SR锁存器(用于置位-复位):

SR的功能类似于D触发器,但它有两个触发器输入,而不是一个触发器和一个值输入。一个触发器端子(蓝线)用于打开锁存器,而另一个触发器端子(红线)用于关闭锁存器。这是有用的,因为它防止设备在被激活后被关闭,除非拉动复位开关。

像D触发器一样,SR锁存器很容易平铺,允许您将一个复位开关连接到多个锁存器:

使用有故障的灯门进行换档(分级电路)

在二进制系统中,移位是一个能将一组数据中的每一位向左或向右移动的函数。例如,将00011001向左移位将产生00110010。注意,在每个数字的左边加0。这是因为移位的结果可能根据可用的比特而改变。在本教程中,我将在下面的例子中使用8位二进制数(也称为一个字节)。

如果1在移动时从字节(进位)的任何一边落下,它将被四舍五入。

从数学上讲,如果不减1,左移一位,数字就会乘以2。向右移动一位等于除以2。如果这个数的右边有一个1(在这种情况下,这个数是奇数),那么这个1被截断,结果被四舍五入,所以00000101(十进制数5)向右移动一位,它就是0000010(十进制数2)。

这是一个左移的例子:

当触发端子(红线)被激活时,每个打开的故障光门将关闭其自身的逻辑灯,同时打开其左侧的逻辑门灯。要产生正确的移动,只需将电线连接到另一端。通过将最左边的位连接到最右边的位,从最左边的位落下的位 1 而不是消失,而是送到这个字节的右边。这就是所谓的向左循环移位:

同样,也可以构造一个循环右移的电路。

使用累加器构建加法器和计数器。

蓄电池是一种非常有用的装置。它可以存储插入其中的任何内容的总和。要构建累加器,从上升沿检测器开始:

上升沿检测器是一种当输入从关闭变为打开时输出信号的器件。您也可以通过反转逻辑灯来创建下降沿检测器,逻辑灯仅在输入打开和关闭时输出脉冲。如果您并排放置一系列下降沿检测器,并从右向左连接,您将得到一个累加器:

当线路被触发时,存储在累加器中的值增加相应位的2的幂。只要将最右边的导线连接到触发器上,累加器就可以用作计数器。你也可以同时触发多行,这样累加器可以增加任意值。注意,如果累加器中的值超过11111111(最大值),它将溢出并导致复位。

通过反转所有逻辑灯(从而将它们转换为上升沿检测器),您可以反转累加器,以便减去插入其中的数据。

堆叠单个组件来构建更复杂的设备。

在此之前,我们知道如何构建各种可以在1bit(八位数)上运行的器件,从D触发器到移位器再到累加器。现在是时候把它们放在一起,构建一个更完美的设备了。

这可以通过以非常紧凑的组装模式将器件堆叠在类似机架的结构中来实现。

例如,这里有一个D触发器阵列和一个累加器连接在一起:

上面一行是D触发器阵列,下面一行是累加器。放置石砖只是为了帮助连接电路。

请注意我是如何用一根线来传输特定位的所有信号的。我本可以使用一根单色导线作为D触发器,并为累加器中的每一位使用另一根彩色导线,但将同一根导线连接到与某一位相连的每一个器件会更容易、更整洁。

改变电线的颜色也很重要,就像我对蓝色和绿色电线所做的那样,因为这允许两个位相互连接而不会干扰。

最后,注意如何使用一组单独的红线连接累加器中的D触发器。如果我不这样做,那么来自D触发器的信号将激活累加器中的下降沿触发器。

无论如何,这只是一个如何组合设备的基本示例。当构建一个更大的设备堆栈时,请记住我提到的规则(每一位一条垂直线,交替的导线颜色,和单独的触发线),因为我将在后面的教程中展示的大多数设备都将使用这些规则。

使用比较器比较数值。

比较器是一种设备,它将两个数值作为输入,并确定它们是否相等或者一个值是否大于另一个值(比较大小)。

要构建二进制比较器,需要考虑关于二进制数的两个明显但重要的事实:1大于0;高位1(即左边)的值大于低位1。

知道了这一点,你就可以通过从左到右扫描来比较两个二进制数,找出第一种情况,即相同位置的两位不匹配。

例如,00110110大于00110010。

如果你看每个数最左边的位,然后一次向右移动一位,直到找到不匹配的位,你就知道结果是1的一位,而且一定是更大的数。

如果在比较数字时,没有一对不同的位匹配,那么你就知道这两个数字相等。

下面介绍如何通过使用故障灯门来实现这一过程:

该比较器包含一个单位比较(一行),它将触发三个输出端子中的一个。自上而下的输出端子为蓝色=绿色和蓝色>:绿色和蓝色

如果单独比较一个位,可以看到蓝线和绿线的位连接到顶部的一对故障光门。如果两个位不同,这对位将向红线发送信号,如果相同,它们将向黄线发送信号,从而继续下一位的比较。

如果位不同,红线触发一对仅由绿线控制的故障光门。如果绿线连接的位关闭,那么 blue >:Green ;将触发的输出,因为蓝线连接的位必须打开。但是,如果绿线连接的位开启,就会触发 。蓝色

使用移位相加算法构建乘法器。

现在你已经知道了如何用累加器执行二进制加法,是时候用累加器构建乘法器了。

在二进制中,乘法有两种方法。要执行X*Y,只需将X加到累加器Y次。还可以用更高效的方法:Shift -Add。Shift-Add类似于手动将十进制数相乘的长乘法。在竖式乘法中(也就是小学时的笔乘多位数的方法),将x乘以y的每一位数,然后将每一个结果相加得到解(这里就不用说了)。

类似地,使用Shift-Add,扫描Y中的每个位,对于值为1的每个位,X将被添加到累加器一次。在每一步之后,向左移动x以将其值增加到下一个位置。

Terraria中的乘数(示例)如下:

如您所见,这是我向您展示的第一款需要半块硬盘才能运行的设备。这是因为移位相加方法需要对每一位执行一次运算,在这种情况下需要执行八次。

从上到下第一行代表Y值,第二行代表X值,最下面一行用于保存结果。当左下角的开关被激活时,半砖驱动被打开并被激活以产生一个移位,并且该操作在每个滴答中被执行一次。在每次操作中,通过右移从Y值中读取一位。如果Y的一个位的值为1,黄线触发一组故障光门将X的当前值发送到累加器。然后,x的值向左移动。注意,在Y值右移和X值左移之间放置了一个额外的故障光门。这是为了确保X值在左移之前发送到累加器。然后,半砖驱动器重复8个滴答的整个过程,直到乘法运算完成。

用与门构建多路复用器

在数字电路中,多路复用器是一种使用二进制输入从长值中选择单个位的设备。

例如,多路复用器可用于从一系列发射器中选择单个发射器来构建发射阵列。多路复用器也可以用来将较小的二进制数转换成十进制单数,我将在以后的教程中展示这一点。这是一个多路复用器,使用3位输入在8个不同输出之间进行选择:

目前二进制输入的值为0,所以底部火炬点亮。通过输入一个二进制数,其对应的火炬将被多路复用器触发。多路复用器与具有分叉结构的与门装置一起工作。

每相邻两个垂直与门,第一个与门顶部的逻辑灯熄灭,第二个与门的逻辑灯点亮(见下图)。拉动相应的两个与门所属的列的开关将导致两个灯切换状态。每个与门还接收来自其左列的输入信号。这样,你就可以控制信号从左到右的传输。

你可以很容易地复制和粘贴一个多路复用器,使它可以控制的位数加倍,并增加输入的数量。

转载请注明原文地址:https://juke.outofmemory.cn/read/1669407.html

最新回复(0)