Wire World adalah sebuah cellular automaton dua dimensi yang dirancang khusus untuk meniru perilaku sirkuit logika digital. Meski sederhana, ia mampu menampilkan gerakan elektron yang tampak seperti aliran arus listrik pada kawat, gerbang logika, dan komponen lain. Wire World pertama kali diperkenalkan oleh Brian Silverman pada tahun 1987 dalam buku Cellular Automata bersama dengan John Conway.
Setiap sel pada grid berukuran persegi dapat berada dalam satu dari empat keadaan:
Perubahan keadaan sel diatur oleh aturan berikut, yang dieksekusi secara sinkron pada setiap langkah (generasi):
Berbeda dengan Game of Life yang lebih berfokus pada pertumbuhan pola organik, Wire World meniru logika digital sehingga dapat dipakai untuk:
Berikut contoh beberapa gerbang logika yang dapat dibuat dengan Wire World. Semua gerbang bekerja secara asynchronous artinya sinyal akan menunggu sampai jalur di depannya kosong sebelum melanjutkan.
Merupakan gerbang inverter yang hanya membutuhkan satu kabel input dan satu output. Pola dasar dapat ditulis dengan kode ASCII berikut (X = Wire, H = Head, T = Tail, . = Empty):
.X.XHX.X.
Jika sinyal masuk pada sisi kiri, kepala elektron akan bergerak melintasi pola dan menghasilkan kepala pada sisi kanan, yang kemudian menjadi ekor dan kembali menjadi kabel.
Gerbang AND membutuhkan dua input. Kedua sinyal harus tiba bersamaan (atau sangat berdekatan) supaya output muncul. Pola tipikal:
..X..X...X..X..
Jika hanya satu sinyal yang masuk, ia akan menyebar ke arah luar tanpa menghasilkan output. Kedua sinyal bersatu pada sel tengah dan menghasilkan kepala di jalur output.
Gerbang OR menghasilkan output jika setidaknya satu input hadir. Pola yang paling sederhana:
X...X..X..X...X
Head yang datang dari salah satu sisi akan langsung diteruskan ke jalur output.
Dengan menggabungkan gerbanggerbang di atas, Anda dapat membangun rangkaian yang melakukan operasi aritmetika, seperti penambah biner (adder) atau register shift. Contoh paling terkenal adalah binary counter yang dapat menghitung hingga 21 dengan hanya menggunakan sejumlah kawat dan gerbang AND/OR/NOT.
Banyak situs web menyediakan simulator Wire World berbasis JavaScript. Berikut beberapa yang populer:
Berikut skema sederhana penjumlah satu bit (HalfAdder) yang menghasilkan sum dan carry. Pola ini menggabungkan satu gerbang XOR (dibuat dari kombinasi NAND) dan satu gerbang AND untuk carry.
Input A: -----Input B: ----- XOR gate AND gate (sum) (carry)Output Sum: -----Output Carry: -----
Dengan menambahkan rangkaian serupa secara berurutan, Anda dapat membuat adder 4bit atau lebih.
Wire World menampilkan kekuatan cellular automata dalam mensimulasikan sistem digital dengan aturan yang sangat sederhana. Meskipun hanya terdiri dari empat keadaan sel dan lima baris aturan, ia berhasil merepresentasikan rangkaian logika, penghitungan, bahkan komputer mini secara teoritis. Bagi siapa saja yang tertarik pada pemrograman kreatif, teori kompleksitas, atau sekadar bersenangsenang dengan pola bergerak, Wire World menyediakan kanvas yang menarik untuk bereksperimen.
