首页 / 攻略秘籍 / 红石攻略 / 我的世界红石电路如何十六进制转换为二进制

我的世界红石电路如何十六进制转换为二进制


来源: 中文Minecraft Wiki

在我的世界中是可以实现十六进制转换为二进制哦,大家是不是都想不到呢?但这其实是很简单的哦。那么今天Minecraft中文分享站小编就来给大家介绍下吧,希望大家喜欢!~

在我的世界中,你也可以将一个十六进制信号转换为一个4位二进制信号。与前面不同的是,您不再需要除了或门之外的任何逻辑门了——因此您只需要分析各个输入端与哪几个输出端的对应关系,然后直接用红石线连过去。

需要注意的是,为了防止不同输入端连线的互相干扰,在最终连到输出端之前您需要用连续的两个非门或是中继器来互相隔离;您也可以选择在一堆连向某一输出端的红石线末端用最简单的输入隔离型或门。在最终投入使用前请先测试以保证不会出错。

下面是十六进制与对应二进制的列表:

我的世界红石转换电路攻略

如果您想得到一个八进制转二进制的8-3编码器,在本机构基础上剥离第四位输出与前八位输入即可。

示例-顺序敏感的3位十进制数密码锁

下图的示例采用了ORs(符号为>;=1)、异或门 (符号为=)、 RS或非锁存器(符号为SR)和一些延迟器(符号为dt*)。依个人喜好,我采用了同或门设计方案C。

我的世界红石转换电路攻略

例子采用了4位设计,因而您可以设置一个十六进制的密码。由于状态(0)十六进制== (0000)二进制无法激活系统,故您只可以设置15种密码(1到F,或0到E)。如果您希望加入第16种,那么请自行编辑电路添加第五位输入。

接下来我们将规定(0)十六进制为 (1111)二进制,至于[1,9]区间内的数请查看上一节末尾的表格。这样,我们就可以使用十进制数字作为密码的外在显示了。我们必须把十个按钮分配到对应的二进制数据上,请看右图的前两列:第一列代表表示为十进制(当然十六进制在[0,9]区间内和十进制的表示一样)的输入码;第二列对应着每一个输入码的二进制。当然您也可以添加更多的按钮来对应区间[A,E],我只是为了讲解方便而把那几位去除了。方框/b1输出第一位,方框/b2输出第二位,依此类推。

接下来您可以看到用Key[i](i=1,2,3)来表示的密码设置区。这几个Key[i]方框的第一个输出均为第一位,第二个输出为第二位,依此类推。您可以在每个Key[i]处用拉杆设置二进制加密型的密码。请参考上一节末尾的表格,还有(0)十六进制:= (1111)二进制的特殊对应。如果我们用按钮输入了第一位,装置会与这一位对应的四位二进制数逐位比较。一旦每一位都正确,才会输出置位信号到下一级。

因此我们要实现逻辑运算(((b1=b1 & b2=b2) & b3=b3) & b4=b4) =: (b*=b*),在Minecraft中至少需要4个与门。这样我们可以把识别通过的信号存到RS锁存器/A中。Key[2]和Key[3]具有同样的验证比较过程。

我们必须确认如果第二输入位是错的话状态会被清除。因此我们采用了一个按键触发事件(–/b1 OR b2 OR b3 OR b4–/dt—/dt—)。请在图中找到包括两个”dt-“的那三个方框。工作原理是:任意键按下就会产生信号,然后再加上一个小延迟。为了在第二个输入位错误时复位/A,我们进行逻辑运算(有键按下) “与” (非B),即“任何键按下且第二位输入错误”。这样如果我们正输入第一位,/A不会被复位;如果/A已经被激活,那么只有/A应当被复位。因此在第二位输入错误而且第一位已经输入时继续逻辑运算(B* & A) =: (AB*),这样/AB*就复位了记忆单元/A。为了避免如果按按钮时间过长从而使/A错误地被复位的问题,我们加入了主延迟元件/dt+。/AB*后面的非门是为了人工复位而设计的(例如可以连接一个压力板)。

然后,把整个复位电路复制到Key[2]上去,除了人工复位端由(非A)引出,自动复位端(即错误输入后的)从C引出。从A接来的人工复位阻止在第一位未输入前B就被激活。所以这一系列线路保证了本装置密码的顺序敏感特性。

问题是为什么我们要使用短延迟方块/dt-。如果/A激活后,第二位也成功输入,那么B激活,(非B)变为低电平。但当(非B)仍然为高电平时,按键触发事件也被激活,A会被错误地复位——但这一切没有发生。/dt-方块的应用使得在按键触发事件被激活之前/B可以有充足的时间作出反应。

对于/C来说,只需要引自B的人工复位端即可以防止C在B激活之前被错误激活,同时也能保证在人工复位端复位/A与/B时,/C也可以被复位。

优缺点:

我的世界红石转换电路攻略

严格来说不算缺点的缺点:本电路中当密码是311时可能会出现刚输入到第二位,密码锁就打开了。为了防止这种情况,用中继器在(非A)与(复位B)之间加一个延迟即可。

如果您修复了这一点,电路会因密码长度差异而具有以下的加密强度:( ||位数|| = 2n-1,密码组合数:||位数||长度)

我的世界红石转换电路攻略



如果你想了解更多关于Minecraft我的世界中的一些疑难问题可以来我的世界攻略秘籍专区。