基于Fallout 4的74LS138译码器的实现

起这个文章名字我自己都笑出了声。

鉴于知乎上程序员比较多……我先上一段代码……

/** * Created by Zdy on 2017/1/14. */ public class DEMO { public static void main(String[] args) { int result[] = new int[]{ decoderLogic(true, true, true), decoderLogic(false, true, true), decoderLogic(true, false, true), decoderLogic(false, false, true), decoderLogic(true, true, false), decoderLogic(false, true, false), decoderLogic(true, false, false), decoderLogic(false, false, false), }; for (int i = 0; i < result.length; i++) { System.out.println(result[i]); } } private static int decoderLogic(boolean array) { boolean a1 = !array[0]; boolean a2 = !array[1]; boolean a3 = !array[2]; return (a1 ? 1 : 0) + (a2 ? 2 : 0) + (a3 ? 4 : 0); } }

上面这段代码,会依次输出0到7。

实际上如果把输出的值,用八个小灯来表示的话。它实际上就是这个。

基于Fallout 4的74LS138译码器的实现
74LS138芯片。(也叫3-8译码器)

输入分别是A0,A1,A2;输出分别是O1至O7,低电平有效。

基于Fallout 4的74LS138译码器的实现
这是其逻辑电路。

好了,扯了这么多,似乎有些平稳,我们来个大杀器。

基于Fallout 4的74LS138译码器的实现
这个就是上面那个逻辑电路在Fallout 4中的实现。(点击可以查看大图。)

是不是黑乎乎的难以看清?那我们再上一个白天的……

基于Fallout 4的74LS138译码器的实现
妈的智障……我实在是忍不住了……

Fallout 4是就是《辐射4》啦,是B社(抱歉忘记公司全称了……)在2015年出的一款游戏啦,游戏内容包括用枪突突突,到处收集宝物(垃圾),建造房子(有点像《我的世界》里面那样)。

而上面那些代码还有什么电路什么的。一般的工科生在大二结束之前肯定会学习《数字电路》和《C语言》这几门课,然后就是上面那些玩意啦,相信你们都能知道我在说啥啦。

好,那么我们现在就进入游戏世界,看看这个3-8译码器是如何做出来的!

(接下来的引用斜体文字如果没有玩过《辐射4》,就直接跳过)

辐射4其中有一个DLC,大大加强了工坊里面的建造内容,B社也因为这一段被诸多玩家所诟病。(居然把汉堡里面的肉抽出来当DLC卖!!)

我们选择了屁股山丘来建造我们的逻辑电路。原因很简单,路上很开阔,我们有足够的地方可以建造东西。

娘希匹,《垃圾桶》卡拉总是在这个地方看着我,真是学院的盒饭比较好吃啊。

基于Fallout 4的74LS138译码器的实现

74LS138的VCC引脚。VCC就是电力供应端啦。还有GND端被我省去了,毕竟我们这里不需要。首先VCC的话,我们采用了中型的发电机,中型发电机可以提供五单位的电力……实际上有一点就可以了……

基于Fallout 4的74LS138译码器的实现

集成逻辑电路使用的逻辑门电路。这里提供了七种门电路,我们只要选用与非门就好啦,也就是74LS00,不过由于这里输入端没有控制,所以也等于74LS20(三输入端与非门)。

基于Fallout 4的74LS138译码器的实现

管线,也就是电线及其连接器。由于在游戏世界中,电线有限长这个说法,可能A点连接到B点需要多处中继连接。

还有,我们使用墙体用了混凝土墙,相比于木墙和铁墙不透光性更好。

基于Fallout 4的74LS138译码器的实现
本来想在这一块平地做电路的,但是由于门电路只能装在墙上,所以就只能放在墙上了。
基于Fallout 4的74LS138译码器的实现
女主的衣服是某潜水服,此装备不能改装……实际上很鸡肋。

游戏中每一个门电路居然还有连接线限制,超出连接数量居然还会功能异常,所以图上的门电路几个摆在一起的,都是几个输入输出完全一样的摆在一起……也是因为这一点,不然我们的电路会比这个简单很多。

基于Fallout 4的74LS138译码器的实现
输入端A1,A2,A3,我们使用双重连接的方式来与非门变成非门。

E1,E2,E3,其中E2,E3直接接入一个非门,然后三端同时接入与门。

基于Fallout 4的74LS138译码器的实现
上图中的黄色框都为非门,紫色框为与门,绿色框为四输入与非门。图中演示的为A1,A2,A3都为低电平的情况。可以看见Y0后面为低电平,其余都为高电平。
基于Fallout 4的74LS138译码器的实现

蛤蛤,为了保证粉色霓虹灯常亮,我在后面摆了一个小型发电机加电塔。

……还有动力装甲被老费穿到屋顶上去了……

最后我们来演示一下实际效果,一共八张图。

先上真值表。

基于Fallout 4的74LS138译码器的实现

分别是Y0-Y7低电平。

基于Fallout 4的74LS138译码器的实现

A0=0;A1=0;A2=0;

基于Fallout 4的74LS138译码器的实现

A0=1;A1=0;A2=0;

基于Fallout 4的74LS138译码器的实现

A0=0;A1=1;A2=0;

基于Fallout 4的74LS138译码器的实现

A0=1;A1=1;A2=0;

基于Fallout 4的74LS138译码器的实现

A0=0;A1=0;A2=1;

基于Fallout 4的74LS138译码器的实现

A0=1;A1=0;A2=1;

基于Fallout 4的74LS138译码器的实现

A0=0;A1=1;A2=1;

基于Fallout 4的74LS138译码器的实现

A0=1;A1=1;A2=1;

一点儿微小的贡献。

免责声明:文章内容来自互联网,本站仅作为分享,不对其真实性负责,如有侵权等情况,请与本站联系删除。
转载请注明出处:基于Fallout 4的74LS138译码器的实现 https://www.zentong.com/zt/8799.html

(0)
上一篇 2024年7月4日 00:05:54
下一篇 2024年7月4日 00:06:10

相关推荐

联系我们

在线咨询: QQ交谈

邮件:362039258#qq.com(把#换成@)

工作时间:周一至周五,10:30-16:30,节假日休息