高二學生自學數電在《我的世界》里打造理論最快計算器 5天漲粉1萬

辛丑牛年 (2021),《我的世界》,一 高二學生爆肝在B站火了。他從未接觸過數電,一切從零開始,僅僅是為了搞清計算器的原理。然後……然後……就直接在《我的世界》里肝出了個“ 理論最快”四則計算器:0.05s完成運算!

高二學生自學數電在《我的世界》里打造理論最快計算器 5天漲粉1萬

這位ID為“ 史蒂夫的骨灰”的Up主,是從去年10月開始這個項目,由於在上高二,只有周末和放假才有時間推進。

瞧瞧,這密密麻麻的零部件,這可都是他“億點億點” 純手工搞上去的。

高二學生自學數電在《我的世界》里打造理論最快計算器 5天漲粉1萬

引得網友直呼: 熟練地讓人心疼

也有人回憶起讀過的《編碼》一書中的話——“這麼多繼電器組合 太大了,現實中做不到”,而後驚呼道:

好傢夥,在《我的世界》直接 夢想成真了!

好傢夥,在《我的世界》直接 夢想成真了!

高二學生自學數電在《我的世界》里打造理論最快計算器 5天漲粉1萬

甚至連小鵬汽車都來湊熱鬧了:

快進到在《我的世界》做出一台智能汽車【狗頭】

快進到在《我的世界》做出一台智能汽車【狗頭】

高二學生自學數電在《我的世界》里打造理論最快計算器 5天漲粉1萬

接下來,讓我們共同走進這位高中生的爆肝之作。

理論最快四則計算器

先來看看計算器實際運行效果:

高二學生自學數電在《我的世界》里打造理論最快計算器 5天漲粉1萬

視頻里說的gt也就是“ 遊戲刻” (GameTick),指理論上《我的世界》遊戲程序更新一次數據的時間:0.05s。

這裡可以看出,加減乘除四種運算全在1遊戲刻之內得出結果!

就是為了實現這個速度,UP主骨灰君才把計算器體積做到這麼大、結構這麼複雜。

過去在《我的世界》中用紅石電路做計算器,或多或少都需要一些運算時間。

這是因為遊戲中傳輸信號的元件會產生0.1秒的延時。

與整個遊戲的運行速度不同,紅石電路是把1秒分成10份,每份稱為 1紅石刻,也就是0.1秒。

這樣無論怎麼進行優化,都不能在小於1紅石刻的時間裡完成運算。

高二學生自學數電在《我的世界》里打造理論最快計算器 5天漲粉1萬

骨灰君採用另一個思路,用另一個元件 活塞來實現電路。

高二學生自學數電在《我的世界》里打造理論最快計算器 5天漲粉1萬

活塞可以在小於1紅石刻的時間內完成一次推拉,相當於在電路中產生一個脈衝信號。

高二學生自學數電在《我的世界》里打造理論最快計算器 5天漲粉1萬

以這種方式傳遞信號,整個電路的運算時間,理論上限就是1遊戲刻=0.05s了。

當然,由於CPU性能的限制,在個人電腦上實際運行時間會長一些。

整套計算器運行起來非常吃配置,不加水冷的話CPU直接飆到3位數溫度。

高二學生自學數電在《我的世界》里打造理論最快計算器 5天漲粉1萬

這麼龐大的工程,到底是怎麼做出來的?

怎麼肝出來的?

說到這個問題,時間還得回溯到1年前。

當時骨灰君的想法非常的簡單,就是想用《我的世界》來研究一下計算器的原理。

所以就先設計了一個 加法架構,一段時間之後,還搞出來了個 乘法器

高二學生自學數電在《我的世界》里打造理論最快計算器 5天漲粉1萬

當時的他,其實沒有想過做完整的一個計算器,但後來覺得既然開始了,那就一步步研究吧。

而且將數電和械電結合,過程中可以說是困難重重。

但骨灰君認為:

想到可能很多人是看到我的工程動態才留下的,我更應該把這個工程做到底。

想到可能很多人是看到我的工程動態才留下的,我更應該把這個工程做到底。

高二學生自學數電在《我的世界》里打造理論最快計算器 5天漲粉1萬

從動態區中不難看出,骨灰君真的就是 一步一個腳印,每突破一個困難就會記錄下來。

例如把二進制轉為BCD碼的模塊就得搭700米長的方塊,甚至超過了遊戲的默認顯示範圍。

BCD碼是用4位二進製表示十進制中的0-9,相當於不把123當成“一百二十三”,而是當成“一二三”再分別用二進製表示。

再例如由於耗時過長,遊戲都更新了,有改動的部分還得重新調整:

高二學生自學數電在《我的世界》里打造理論最快計算器 5天漲粉1萬

而後更是像在給粉絲們做 “工作彙報”一樣:

進度:XXX。

進度:XXX。

於是,就這麼一點一滴像打地基一樣,計算器的各個部件就做好了。

到後來,當初教他數電基礎的網友反倒跟不上了。

高二學生自學數電在《我的世界》里打造理論最快計算器 5天漲粉1萬

最後的工作,用骨灰君的話就是 “簡單組裝一下”

(講真,有被凡爾賽到,瞧瞧彈幕的反饋)

高二學生自學數電在《我的世界》里打造理論最快計算器 5天漲粉1萬

乘法模塊:

高二學生自學數電在《我的世界》里打造理論最快計算器 5天漲粉1萬

BCD轉binary:

高二學生自學數電在《我的世界》里打造理論最快計算器 5天漲粉1萬

Binary轉BCD(整數):

高二學生自學數電在《我的世界》里打造理論最快計算器 5天漲粉1萬

……

最後是顯示器+總控電路:

高二學生自學數電在《我的世界》里打造理論最快計算器 5天漲粉1萬

大功告成!

高二學生自學數電在《我的世界》里打造理論最快計算器 5天漲粉1萬

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

如此浩大的工程,出了bug怎麼辦?

還別說,真有網友問了這個問題:

骨灰君也對此作出了回復:

檢查一整天找出4個錯誤方塊……

檢查一整天找出4個錯誤方塊……

自但更多的網友還是“膜拜”於骨灰君之肝:

還有集成電路設計專業的來招人:

回到這個項目的初衷,其中一個讓骨灰君堅持的理由,就是為了當時近5000的粉絲。

而有網友認為,Up主的工程,堪稱“50W粉的活”。

高二學生自學數電在《我的世界》里打造理論最快計算器 5天漲粉1萬

不過放眼現在,骨灰君的粉絲量已經達到了 1.4W

恭喜,恭喜!

同時也期待骨灰君下一次的力作,不過要等到高考以後了~

(0)
上一篇 2021-08-07 15:25
下一篇 2021-08-07 15:25

相关推荐