本文所介紹的“電線世界”的例子提醒我們,無論多么復(fù)雜的邏輯運(yùn)算,都可以建立在非常簡單的幾條規(guī)則之上。電線世界(Wire World)是一個(gè)網(wǎng)格狀的虛擬世界,其運(yùn)行規(guī)則可以簡單敘述如下:藍(lán)色格子會(huì)變成黃色格子;紅色格子會(huì)變成藍(lán)色格子;當(dāng)黃色格子周圍的八個(gè)格子中,有一個(gè)或兩個(gè)紅色格子,那么黃色格子就會(huì)變成紅色格子,否則不發(fā)生變化。
雖然說可以在實(shí)物棋盤上模擬電線世界里的演化進(jìn)程,但借用軟件模擬器可以大大提高工作效率,如Golly或Mcell,這兩款軟件都提供了電線世界的模擬演化功能。
例1:導(dǎo)線(如圖1:圖中近墨為藍(lán),近灰為紅,泛白為黃。下同)。在網(wǎng)格中拉出一條黃色的直線或曲線,隨便在某個(gè)位置相鄰地描上紅點(diǎn)和藍(lán)點(diǎn),每一步運(yùn)行后,藍(lán)色變成黃色,紅色變成藍(lán)色,看上去就仿佛是一個(gè)電子信號在導(dǎo)線中移動(dòng),這也就是電線世界名字的由來。導(dǎo)線還可以分岔,一個(gè)電子移動(dòng)到分岔時(shí)就會(huì)自我復(fù)制成兩個(gè)電子(如圖2)。
例2:柵欄。若要在導(dǎo)線上阻止電子信號的移動(dòng),只需要在導(dǎo)線上畫出一個(gè)類似柵欄的小裝置,變化效果如圖3。
可以看出,當(dāng)導(dǎo)線所鄰接的格子中有三個(gè)是紅色時(shí),導(dǎo)線不會(huì)發(fā)生變化,于是就阻斷了信號的傳輸。
例3:寄存器??梢韵朕k法把一個(gè)電子信號存儲(chǔ)到寄存器中,形狀如圖4。
信號從左面輸入端進(jìn)入導(dǎo)線后,會(huì)在由環(huán)狀導(dǎo)線構(gòu)成的寄存器中周而復(fù)始地繞圈子,但若有清空信號自上而下輸入到寄存器中時(shí),寄存器就會(huì)被清空。
例4:邏輯門??梢詫?dǎo)線設(shè)計(jì)成不同功能的邏輯門,比如與門、或門等,下面的例子展示的是異或門邏輯,即當(dāng)在兩個(gè)輸入端都輸入電子信號的時(shí)候,輸出端得不到電子信號輸出,而只有在某一個(gè)輸入端輸入電子信號的時(shí)候,輸出端才會(huì)得到電子信號輸出,形狀如圖5。
有興趣的朋友可以嘗試自己構(gòu)建一個(gè)邏輯門,比如一個(gè)“或門”邏輯電路,即在任意一個(gè)輸入端輸入電子信號,輸出端都可以得到電子信號輸出。電線世界既是學(xué)習(xí)工具,也是一種有趣的游戲,從理論上說,只要有足夠的耐心,就能在電線世界中打造出一“臺(tái)”具有輸入、存儲(chǔ)、運(yùn)算和輸出功能的完整的計(jì)算機(jī)