高二学生爆肝10个月!自学数电在《我的世界》里打造理论最快计算器,5天涨粉1万...

HollisChuang HollisChuang     2022-12-20     328

关键词:

金磊 梦晨 发自 凹非寺
量子位 报道 | 公众号 QbitAI

辛丑牛年(2021),《我的世界》,一高二学生因爆肝在B站火了。

他从未接触过数电,一切从零开始,仅仅是为了搞清计算器的原理。

然后……然后……

就直接在《我的世界》里肝出了个“理论最快”四则计算器:

0.05s完成运算!

这位ID为“史蒂夫的骨灰”的Up主,是从去年10月开始这个项目,由于在上高二,只有周末和放假才有时间推进。

瞧瞧,这密密麻麻的零部件,这可都是他“亿点亿点”纯手工搞上去的。

引得网友直呼:熟练地让人心疼

也有人回忆起读过的《编码》一书中的话——“这么多继电器组合太大了,现实中做不到”,而后惊呼道:

好家伙,在《我的世界》直接梦想成真了!

甚至连小鹏汽车都来凑热闹了:

快进到在《我的世界》做出一台智能汽车【狗头】

接下来,让我们共同走进这位高中生的爆肝之作。

理论最快四则计算器

先来看看计算器实际运行效果:

视频里说的gt也就是“游戏刻”(GameTick),指理论上《我的世界》游戏程序更新一次数据的时间:0.05s。

这里可以看出,加减乘除四种运算全在1游戏刻之内得出结果!

就是为了实现这个速度,UP主骨灰君才把计算器体积做到这么大、结构这么复杂。

过去在《我的世界》中用红石电路做计算器,或多或少都需要一些运算时间。

这是因为游戏中传输信号的元件会产生0.1秒的延时。

与整个游戏的运行速度不同,红石电路是把1秒分成10份,每份称为1红石刻,也就是0.1秒。

这样无论怎么进行优化,都不能在小于1红石刻的时间里完成运算。

骨灰君采用另一个思路,用另一个元件活塞来实现电路。

活塞可以在小于1红石刻的时间内完成一次推拉,相当于在电路中产生一个脉冲信号。

以这种方式传递信号,整个电路的运算时间,理论上限就是1游戏刻=0.05s了。

当然,由于CPU性能的限制,在个人电脑上实际运行时间会长一些。

整套计算器运行起来非常吃配置,游戏中这0.05s,现实里CPU要跑6s。

这么庞大的工程,到底是怎么做出来的?

怎么肝出来的?

说到这个问题,时间还得回溯到1年前。

当时骨灰君的想法非常的简单,就是想用《我的世界》来研究一下计算器的原理。

所以就先设计了一个加法架构,一段时间之后,还搞出来了个乘法器

当时的他,其实没有想过做完整的一个计算器,但后来觉得既然开始了,那就一步步研究吧。

而且将数电和械电结合,过程中可以说是困难重重。

但骨灰君认为:

想到可能很多人是看到我的工程动态才留下的,我更应该把这个工程做到底。

从动态区中不难看出,骨灰君真的就是一步一个脚印,每突破一个困难就会记录下来。

例如把二进制转为BCD码的模块就得搭700米长的方块,甚至超过了游戏的默认显示范围。

BCD码是用4位二进制表示十进制中的0-9,相当于不把123当成“一百二十三”,而是当成“一二三”再分别用二进制表示。

再例如由于耗时过长,游戏都更新了,有改动的部分还得重新调整:

而后更是像在给粉丝们做“工作汇报”一样:

进度:XXX。

于是,就这么一点一滴像打地基一样,计算器的各个部件就做好了。

到后来,当初教他数电基础的网友反倒跟不上了。

最后的工作,用骨灰君的话就是“简单组装一下”

(讲真,有被凡尔赛到,瞧瞧弹幕的反馈)

乘法模块:

BCD转binary:

Binary转BCD(整数):

......

最后是显示器+总控电路:

大功告成!

网友:5000粉整出50W粉的活

如此浩大的工程,出了bug怎么办?

还别说,真有网友问了这个问题:

骨灰君也对此作出了回复:

检查一整天找出4个错误方块……

自但更多的网友还是“膜拜”于骨灰君之肝:

还有集成电路设计专业的来招人:

回到这个项目的初衷,其中一个让骨灰君坚持的理由,就是为了当时近5000的粉丝。

而有网友认为,Up主的工程,堪称“50W粉的活”。

不过放眼现在,骨灰君的粉丝量已经达到了1.4W

恭喜,恭喜!

同时也期待骨灰君下一次的力作,不过要等到高考以后了~

参考链接:

[1]https://www.bilibili.com/video/BV1Xf4y1G73s
[2]https://space.bilibili.com/84738502/dynamic
[3]https://minecraft.fandom.com

有道无术,术可成;有术无道,止于术

欢迎大家关注Java之道公众号

好文章,我在看❤️

狂肝10个月手搓gpu,他们在《我的世界》里玩起《我的世界》,网友:梦想成真!...

梦晨衡宇萧箫发自凹非寺量子位|公众号QbitAI自从有人在《我的世界》里用红石电路造出CPU,就流传着一个梗:总有一天,这帮红石佬能在我的世界里玩上我的世界。这一天,真的来了!先来看这台“在无MOD纯... 查看详情

算法岗必刷套题-入门级坚持3个月爆肝华为机试108题c++全解(强烈推荐收藏,适合学生党,校招必备)

作者:翟天保Steven版权声明:著作权归作者所有,商业转载请联系作者获得授权,非商业转载请注明出处华为机试简介    金九银十,金三银四。当前正处于校招、社招的火热期,之前就想为正在筹备就... 查看详情

高二英语第一单元课件

参考技术A  高二英语是整个高中英语的中间部分,学好高二英语对于高中英语来说至关重要,下面是我整理的课件。  高二英语第一单元课件  一、教法建议。  本单元通过对迪斯尼乐园及沃尔特迪斯尼本人成功之路... 查看详情

元宇宙里过节,英伟达快速打造「冬日仙境」,占地16万平米!(代码片段)

...诞是种什么体验?今天就带你体验一把!英伟达爆肝300小时打造的冬日仙境终于赶在节前发布了,总共耗费了超3000万个方块,占地近16万平米!三个大雪球构成的世界足够圣诞节去探索了,但 查看详情

业余时间零基础自学编程,9个月后我成为一名软件工程师

在这篇文章里,我想分享自己如何在9个月内一边做着全职工作,一边自学编程,从一名小白成长为年薪六位数软件工程师。每当阅读别人的成功故事时,我的第一反应都是查看作者的背景,希望他们的经历和... 查看详情

我的世界怎样切换独显

可打开NVIDIA控制面板,在程序里添加我的世界切换成高性能NVIDIA处理器即可。《我的世界》是由MojangStudios开发,在中国由网易代理的沙盒式建造游戏,游戏于2017年8月8日在中国大陆独家运营。玩家可以在游戏中的三维空间里创... 查看详情

❤️大学三年沉淀,把我的学习经验分享给你,爆肝万字带你走进编程世界!❤️(代码片段)

Hello,大家好,我是Alex。时光匆匆,暑假过的很快,转眼又到了大学的开学季,我也是又混进了我们学院的新生群,发现大家对计算机充满着迷之向往,啊哈哈哈,不过没有人带着入门还是很容易... 查看详情

半个月爆肝,python学习指南:学习方法路径图资料都备齐了!

...05:12视频已上传CSDN,点击视频即可播放:半个月爆肝,Python学习最强指南!  查看详情

java自学之路

...包括我),当你要走向社会的时候,就不要再把自己当成学生,不要把自己的将来交给别人,学会运用自己的眼睛去观察,去了解这个世界吧。每个培训机构都会宣传自己 查看详情

耗时4个月,阿里架构师打造java面试突击文档,10位朋友已拿offer

不论是校招还是社招都避免不了各种面试、笔试,如何去准备这些东西就显得格外重要。不论是笔试还是面试都是有章可循的,我这个有章可循”说的意思只是说应对技术面试是可以提前准备。运筹帷幄之后,决胜千... 查看详情

耗时4个月,阿里架构师打造java面试突击文档,10位朋友已拿offer

不论是校招还是社招都避免不了各种面试、笔试,如何去准备这些东西就显得格外重要。不论是笔试还是面试都是有章可循的,我这个有章可循”说的意思只是说应对技术面试是可以提前准备。运筹帷幄之后,决胜千... 查看详情

半个月爆肝,python学习指南:学习方法路径图资料都备齐了!

1.6米长,八年Python使用经验,耗时半月,制作了这张Python学习路径图!视频大纲:自己的课代表1、为什么学习python00:432、python学习路径图和python备忘手册(如何学习python)02:203、学习资源的获取04:234、... 查看详情

爆肝五万字,写给java零基础小白的自学路线和进阶指南,收藏能省掉几万学费。(代码片段)

...f0c;大家好,我是一条~根据群内粉丝的需求,一条爆肝一周整理了一套Java学习路线,有了方向才能按图索骥,事半功倍。写给Java零基础小白的自学路线和进阶指南,收藏能省掉几万学费。本文分为学习路线和... 查看详情

高二英语非谓语动词100道答案解析及提高听力方法

参考技术A  高二是高中学习的关键时期,不仅课程任务重,而且很大程度上决定着学生今后的发展方向,以及能否考入理想的大学。有着丰富教学经验的老师,向大家传授高二各学科学习技巧,希望对高二学生掌握良好的学... 查看详情

我的世界运行错误,游戏崩溃,未响应怎么办?

无论使用什么启动我的世界都是这样。游戏内存256mb,有时进入游戏就崩溃,有时是生成加载世界时崩溃,甚至是保存时崩溃,跪求解决方法。目前我的世界版本是1.7.2和1.7.10,才3个mod卸载重新安装即可。《我的世界》是由Mojang&... 查看详情

4年功能测试10k,5个月自学自动化测试跳槽字节涨薪15k!

前言我是大专毕业的,计算机专业,刚出来的时候,没有拿的出手的学历,也没什么特别突出的能力,工资也特别低,只能说能够在这个二线边缘城市养活自己吧,基本上没有什么余钱。在小厂干了一... 查看详情

4年功能测试10k,5个月自学自动化测试跳槽字节涨薪15k!

前言我是大专毕业的,计算机专业,刚出来的时候,没有拿的出手的学历,也没什么特别突出的能力,工资也特别低,只能说能够在这个二线边缘城市养活自己吧,基本上没有什么余钱。在小厂干了一... 查看详情

玩我的世界,怎么把32位java升级到64位?

...级就能升级的,需要更换相应的操作系统后才能升级。《我的世界》是一款带有生存冒险元素的建造类游戏。我的世界:整个游戏世界由各种方块构成,玩家可以破坏它们,也可以用自己的方块随意建造东西。为了在游戏里生存... 查看详情