充滿數學之美的彈珠機械裝置(二)

十月 2, 2017
Facebook
Twitter
我們上週的成果看起來不是很豐富:一臺最簡單的「機器」,能容納一顆彈珠,但在第二顆彈珠滾入時讓兩顆彈珠都滾走。這週,我們會試著重製這臺機器,打造一臺可以記錄其存放彈珠數量的完整二進位計數器。
我們的想法是這樣的:我們上次介紹的陷阱運算了二進位位元,裝置裡沒有彈珠時記錄0,有一顆彈珠記錄1,當第二顆彈珠滾入,讓該位元「溢位」(overflow)後,陷阱就會將彈珠全數滾出,這時,應該要有一顆彈珠滾入下一個陷阱,代表兩倍於第一個陷阱的位元。

​然而在機械方面,這臺機器會將兩顆彈珠都丟掉。因此我們需要加入圖右的第二個元件,讓不同的彈珠能輸入不同的軌道──Chaos Toy公司稱之為「翹板開關」(paddle switch),但電路設計師可能稱之為「正反器」(flip-flop)。它的原理如下:在此結構中,當一顆彈珠從上方掉入這個元件的中間時,它會使中間的翹板往左傾斜,並從左方出口滾出。但這會轉換開關的狀態,讓下一顆彈珠進入時,使翹板往右傾斜,並從右方出口滾出。當中間的翹板持續轉換狀態,輸入的彈珠便會輪流從左右出口滾出。

這個翹板開關能讓陷阱在輸入兩顆彈珠並讓彈珠滾走時,只接收一顆彈珠(另一顆彈珠可以送至另一個凹槽)。如此一來,若要將上週我們提到的一位元裝置擴充至二位元裝置,只要加入一節連接至翹板開關的軌道,然後將翹板開關連接至另一個陷阱即可。這是上週的裝置擴充後的樣子:

圖片

(你可能會想,為什麼新增的軌道呈S型。這是為了要減慢滿溢的兩顆彈珠的速度,讓它們在輸入翹板開關時不會緊密地接在一起,因而阻塞或因翹板無法及時轉換狀態而掉入相同的出口。)下方側視圖是裝置加入第二個陷阱後的樣子。
這時候,很顯然地,只要你有足夠的材料和空間,你可以在這個計數器上重複增加無限的二位元。在這個框架下,我認為四個陷阱最適合,以下是這個完整的二進制位計數器。
在這個圖片中,你也可以看到在右方有一個用來承接從陷阱之間掉落的彈珠的籃子,在左方也有一個承接超出裝置負荷、滿溢出的彈珠的籃子。

這會在什麼樣的情況下發生呢?請將每一個陷阱試想成一個二進位位元,我盡量將它們「合理」地配置,讓最高位數位於左方。在最左邊的陷阱中,一顆彈珠代表八顆一開始輸入此裝置的彈珠。接下來的陷阱中,一顆彈珠代表一開始輸入裝置的四顆彈珠;在其右方的陷阱中,一顆彈珠代表一開始輸入的兩顆彈珠;最後是最左方的陷阱,其中的彈珠就是最初輸入的彈珠。(不幸的是,最高位數的陷阱除了要在最左方外,也必須要在最下方,因為這臺機器是以重力作為動力。然而我們仍然可以輕易地從左至右辨識目前狀態所代表的數字。)這臺機器可以計算15顆輸入的彈珠,並在第16顆彈珠輸入後溢位。實際看看它的動作吧!

延伸閱讀>>
充滿數學之美的彈珠機械裝置

(譯:編輯部)
[原文]

Social media & sharing icons powered by UltimatelySocial