量子位 报道 | 公众号 QbitAI
辛丑牛年(2021),《我的世界》,一高二学生因爆肝在B站火了。
他从未接触过数电,一切从零开始,仅仅是为了搞清计算器的原理。
然后……然后……
就直接在《我的世界》里肝出了个“理论最快”四则计算器:
0.05s完成运算!
这位ID为“史蒂夫的骨灰”的Up主,是从去年10月开始这个项目,由于在上高二,只有周末和放假才有时间推进。
引得网友直呼:熟练地让人心疼。
也有人回忆起读过的《编码》一书中的话——“这么多继电器组合太大了,现实中做不到”,而后惊呼道:
好家伙,在《我的世界》直接梦想成真了!
甚至连小鹏汽车都来凑热闹了:
快进到在《我的世界》做出一台智能汽车【狗头】
接下来,让我们共同走进这位高中生的爆肝之作。
先来看看计算器实际运行效果:
视频里说的gt也就是“游戏刻”(GameTick),指理论上《我的世界》游戏程序更新一次数据的时间:0.05s。
这里可以看出,加减乘除四种运算全在1游戏刻之内得出结果!
就是为了实现这个速度,UP主骨灰君才把计算器体积做到这么大、结构这么复杂。
过去在《我的世界》中用红石电路做计算器,或多或少都需要一些运算时间。
这是因为游戏中传输信号的元件会产生0.1秒的延时。
与整个游戏的运行速度不同,红石电路是把1秒分成10份,每份称为1红石刻,也就是0.1秒。
这样无论怎么进行优化,都不能在小于1红石刻的时间里完成运算。
骨灰君采用另一个思路,用另一个元件活塞来实现电路。
活塞激活时的响应是瞬间的,这样就能让红石信号无延时地传递。
以这种方式传递信号,整个电路的运算时间,理论上限就是1游戏刻=0.05s了。
当然,由于CPU性能的限制,在个人电脑上实际运行时间会长一些,骨灰自己的电脑需要6秒
这么庞大的工程,到底是怎么做出来的?
说到这个问题,时间还得回溯到1年前。
当时骨灰君的想法非常的简单,就是想用《我的世界》来研究一下计算器的原理。
所以就先设计了一个加法架构,一段时间之后,还搞出来了个乘法器。
当时的他,其实没有想过做完整的一个计算器,但后来觉得既然开始了,那就一步步研究吧。
而且将数电和械电结合,过程中可以说是困难重重。
但骨灰君认为:
想到可能很多人是看到我的工程动态才留下的,我更应该把这个工程做到底。
从动态区中不难看出,骨灰君真的就是一步一个脚印,每突破一个困难就会记录下来。
例如把二进制转为BCD码的模块就得搭700米长的方块,甚至超过了游戏的默认显示范围。
BCD码是用4位二进制表示十进制中的0-9,相当于不把123当成“一百二十三”,而是当成“一二三”再分别用二进制表示。
而后更是像在给粉丝们做“工作汇报”一样:
进度:XXX。
于是,就这么一点一滴像打地基一样,计算器的各个部件就做好了。
到后来,当初教他数电基础的网友反倒跟不上了。
最后的工作,用骨灰君的话就是“简单组装一下”。
(讲真,有被凡尔赛到,瞧瞧弹幕的反馈)
乘法模块:
BCD转binary:
Binary转BCD(整数):
......
最后是显示器+总控电路:
大功告成!
如此浩大的工程,出了bug怎么办?
还别说,真有网友问了这个问题:
骨灰君也对此作出了回复:
检查一整天找出4个错误方块……
自但更多的网友还是“膜拜”于骨灰君之肝:
还有集成电路设计专业的来招人:
回到这个项目的初衷,其中一个让骨灰君坚持的理由,就是为了当时近5000的粉丝。
而有网友认为,Up主的工程,堪称“50W粉的活”。
不过放眼现在,骨灰君的粉丝量已经达到了1.4W!
恭喜,恭喜!
同时也期待骨灰君下一次的力作,不过要等到高考以后了~
GPIO 是指单片机(微控制器)主板上的一组引脚,这些引脚可以发送或接收电信号,但它们不是为任何特定目的而设计的,这就是为什么它们被称为“通用”IO。
Minecraft Link使您能够通过 MCreator 程序、命令和 Minecraft mod 开发人员的通用 API 将 Arduino 和Raspberry Pi 等硬件设备与 Minecraft 游戏连接起来。
上周,几乎是前后脚,英伟达和国内几家科研机构分别发布了两份内容相似的论文。
数字电路是MC中十分重要的红石电路,其中最为关键的就是逻辑门。
This is a reference of Minecraft Python API Library, which is supported on Minecraft: Pi edition and the PC version using the RaspberryJuice plugin.
我的世界服务端大全,本文收集了一些MC的服务端。
想象一下如果世界没有电,那将是多么令人绝望的景象。夜晚不再有光;空调和WIFI也变成了奢望;你目前正在阅读的这篇文章,将不可能呈现在你面前;当然,你热爱的游戏《我的世界》,也不可能存在了。
想成为《我的世界》中众人膜拜的高阶玩家吗?红石系统是可以让你怒刷存在感的不二法器。
本书是教你如何将Minecraft元素引入真实世界。用乐高积本或者3D打印材料,进行Minecraft趣味实物制作,并且进一步运用Arduino、编程以及机器人技术,使制作项目发光、运动。
Minecraft相关的红石介绍,内容知识偏向硬核,可能有点晦涩难懂。
单枪匹马造出一个CPU乃至完整的电脑需要多长时间?有位大牛在《我的世界》游戏里用实际行动回答了这个问题:可能要花费一年多。