Компьютер из 10000 костей домино

в 15:41, , рубрики: компьютер, ненормальное программирование, метки: ,

Мэтт Паркер, отметившийся в проектах Numberphile и Standup Maths, в компании с командой Domino Computer Builders построили, наверное, самый медленный компьютер в мире из костей домино.

Немного деталей под катом.

Первым делом нужны базовые элементы. Вот так выглядит AND gate:
Компьютер из 10000 костей домино
Если толкнуть один из входов («послать единицу»), на выходе получим «ноль»: «единица» на правом входе просто «закроет ключ», единица на левом же раздвоится, и тот сигнал, который ушёл вправо, закроет ключ для левого прежде чем тот дойдёт до него. Если же толкнуть оба входа, правый сигнал, закрыв ключ, не даст левому входу «самоуничтожиться», и на выход уйдёт «единица».

А это — XOR gate.
Компьютер из 10000 костей домино
Здесь, если послать «единицы» на оба входа, домино остановятся посередине, и на выходе будет «ноль».

Из этих двух элементов составляется полусумматор, который принимает на вход два бита и на два выхода выдаёт их сумму: выход «единиц» — это XOR, выход «двоек» — AND.
Компьютер из 10000 костей домино
Зигзаг справа — задержка сигнала, чтобы дать возможность закрыть ключ перед выходом двоек, если необходимо.
Левый выход — x XOR y — единицы, правый — (NOT (x XOR y)) AND y = x AND y — двойки.

Из двух полусумматоров получается уже полноценный сумматор, который помимо входных битов принимает ещё и бит переноса. Соединив три таких сумматора (и полусумматор для начальных битов, где перенос не требуется), команда получила калькулятор, который может сложить два четырёхбитных числа и выдать пятибитный ответ.

Главная проблема таких цепей — утечка сигнала. Неправильно упавшая или улетевшая кость домино может запустить другую цепочку, «сломав» таким образом вывод.

Автор: AraneusAdoro

Источник


* - обязательные к заполнению поля


https://ajax.googleapis.com/ajax/libs/jquery/3.4.1/jquery.min.js