В комментариях тут напомнили о существовании такой штуки, как струйные вычислители. Что это за зверь такой? *Картинка с котом возле настольной лампы*.
Начну издалека. Как вы возможно знаете, вычислительная архитектура современных процессоров, если рассматривать на уровне совсем базовых элементов, состоит из всяческих логических вентилей, триггеров, элементов ИЛИ/И/ИЛИ-НЕ и так далее. Более подробно основы про логические элементы можно почитать, например, тут. А вот пример транзисторной реализации элемента 3И-НЕ в микросхемах 555-й серии.
Ничего не понятно? Если совсем простыми словами - элемент "И" это 3 "проводка" - если на двух входах есть два сигнала 1 и 1, (условные +3.3-5 вольт), то он на свой провод-вывод отдаст 1 - тот же уровень напряжения, который в системе принят, как 1. Если же 1/0, 0/1, 0/0 - выход будет без напряжения (логический ноль). Выход элемента "ИЛИ" - это 0 только в случае, если оба входа 0 и 0. Если 0/1, 1/0, 1/1 - выход всегда 1. Ну и так далее. Вспоминаем школьные таблицы истинности - вот это их аппаратная реализация)
Из этих базовых логических элементов (которые, как вы могли увидеть в примере, сами по себе состоят из единиц-десятков транзисторов, вот тех самых, которые в нанометровом размере травятся) собираются уже более сложные конструкции. Например двоичные сумматоры, мультиплексоры, демультиплексоры, компараторы, счётчики, регистры. Ну и в общем всё то, что как раз и обеспечивает хранение двоичных данных и выполнение над ними операций.
А вот уже из этих вещей далее строятся аппаратные инструкции, вычислительные конвейеры, указатели инструкций, блоки регистров - всё то, с чем уже более-менее привык иметь дело программист-кристалльщик, на низком, аппаратном уровне.
Так вышло, что эволюционным путём человечество пришло к полупроводниковой реализации всех этих элементов - электроника меньше, надёжнее, дешевле, технологичнее. Однако - это не единственный возможный вариант :)
Так вот!) Где-то в конце 1950-х всерьёз изучались реализации логических элементов на основе эффекта "прилипания" ламинарной струи газа (воздуха, например) к стенкам определённым образом сконструированных каналов. Артём Кашканов (тот самый, который построил компьютер на основе релейной логики) в своё время написал цикл статей [1 , 2, 3 ] где достаточно подробно рассказал, как это выглядит-работает. И даже реализовал некоторые схемы на практике.
Ведь по большому счёту какая разница - что является рабочим телом? Поток электронов, движущихся в проводниках и полупроводниках предсказуемым образом, или струя воздуха, управляемая в каналах другими струями воздуха? Результат "на выходе" базового логического элемента будет всё тот же. Только не "есть ток"/"нет тока", а "дует" и "не дует". Что эквивалентно логической единице и логическому нулю.
Однако, если вы подробнее почитаете про эксперименты Артёма - то сразу догадаетесь, отчего такой замечательный (и радиационно-стойкий!) вычислительный принцип не пошёл в широкие массы. Для слаженной работы сотен и тысяч струйных элементов нужны большие затраты воздуха. Само устройство получается крайне громоздким, да и миниатюризации поддаётся только до определенных пределов.
Ввод-вывод данных тоже будет весьма нетривиальным, как и программирование. А с учётом того, что в современных процессорах таких блоков - миллионы, а транзисторов из которых они состоят - буквально миллиарды - естественно, что в современных условиях им места нет, за исключением очень специализированных и простых вариантов.
С другой стороны - теоретически абсолютно ничего не мешало появлению простых двоичных компьютеров в эпоху паровых машин - газодинамика и изучение ламинарных течений возникло в начале-середине XIX века ещё. Стимпанк мог оказаться более реальным, чем нам казалось ранее. Но это уже совсем другая история =)
Оценили 17 человек
19 кармы