Terraria

Terraria

44 ratings
TERRARIA 逻辑门大作戦
By 没有你对我很重要
—— 麻麻,给我买个泰拉,我要学数字电路😀
—— 打字学会了吗😈
   
Award
Favorite
Favorited
Unfavorite
关于逻辑门电路中与门/ 非门冒烟的解释
问题的发生

Terraria 1.31 版本加入了逻辑门电路,终于可以制作CPU了,想想都激动😘。
俗话讲,万丈高楼平地起,我先描绘了这样的一个电路:



先不管这是什么,主要是出问题了,如下图:



控制蓝色线路开关时,上面的与门会冒烟。关于冒烟,不知道官方怎么设定的,在wiki里面也没说明。本着自食其力的原则,我还是自己搞吧。

问题的分析

首先把问题电路精简出来,如下图。列出与门的真值表



A B O L 0 1 0 OFF 1 0 0 ON 冒烟 0 1 0 ON 1 0 0 OFF 冒烟
在AB由01变成10时,与门有冒烟动画,且输出端LED状态变化。

观察电路图我们发现,AB由01变成10时,B经过了一个非门,产生了延迟,而A是直接输入到与门的。A和B的时序图:



AB由01变成10时,对应图中b 点。b点处产生毛刺,是因为当A有0变1,B由于延迟保持1,导致与门有一小段时间输出1。
至于LED为什么遇到毛刺状态就变化,不清楚。不知道是游戏设计的bug,还是本来就是这样子的。

问题的解决

方法一
上面提到问题是由于B 输入经过了一个逻辑门而产生延迟,解决办法就是让A 输入经过一个逻辑与门,也产生一个延迟。实验证明,完全正确,不冒烟了,LED也始终保持熄灭状态。



逗逼的方法二
好脑子都用在针尖上。专门针对LED想出一种办法。上面说过,LED每遇到一个毛刺,状态就改变,我就让它每次都经历两个毛刺,这样状态就能保持。(我就的这还是游戏bug)



电路图这样改,输出直接产生第一个毛刺,输出经过一个与门产生第二个毛刺。实验证明,灯是不亮了,但烟还是有的。



最终的电路图是这样子的。


此电路可以称为“不一致”电路,即只有三个输入相同时,输出0,否则输出1。
简单的锁存器
19 Comments
I绿洲I GMZ 3 Jul, 2021 @ 9:56am 
:papyruswacky:
旅人 7 Sep, 2020 @ 5:03am 
0.0
未知的首爾 4 Sep, 2020 @ 9:49pm 
原來terraria 不適遊戲
而是學校的教材
懂了
SMALL丁 20 Jul, 2020 @ 12:56am 
跟我物理电路题长得有点像
-Kurisu 30 Jun, 2020 @ 9:39am 
this looks so cool i wish i could read it
SK 27 Jun, 2020 @ 7:23am 
天秀。。。
拖鞋狗 25 Jun, 2020 @ 8:57pm 
66666
飞飞飞飞芬利 25 Jun, 2020 @ 8:53pm 
666:Mirro_Lollipop:
Candy★Night 10 May, 2019 @ 6:52pm 
说了一大堆,我没怎么看懂,2333
禍福相依 2 Jan, 2019 @ 10:33pm 
6666666666