Код
#статьи

«Компьютеры Гитлера»: как Германия стала родиной программируемых машин

Практичные немцы собрали из списанных телефонов программируемые машины, на которых рассчитывали и конструировали ракеты «Фау».

tesla / youtube

Вторая мировая война ускорила появление компьютеров. Государства изобретали новое оружие, строили заводы и прокладывали дороги, но для расчётов инженеры пользовались медленными логарифмическими линейками и арифмометрами.

Миру понадобились мощные вычислительные устройства, и они появились уже в сороковых годах XX века. Первые машины были электромеханическими — там, где у современных компьютеров сейчас транзисторы, у них стояли реле.

Изобретатель первых компьютеров

Мало кто слышал про Конрада Цузе, хотя он создал первую в мире вычислительную машину с программным управлением. С этим согласны даже в США и в Англии — странах, которые борются за звание родины первых компьютеров.

Конрад Цузе за работой. Фото: Музей компьютерной истории

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

Компьютер из печатной машинки и пылесоса

Поначалу Конрад Цузе не работал с вычислительными машинами. Во время учёбы ему приходилось проводить сложные расчёты на логарифмической линейке. В 1935 году он получил диплом инженера и устроился на авиационный завод.

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

Конрад Цузе

Построить автоматическую машину для рутинных расчётов Цузе решил, ещё когда был студентом. Он год проработал на заводе, а потом уволился и начал собирать компьютер.

В 1938 году в доме родителей Цузе построил действующую модель электромеханического вычислителя и присвоил ей название, включавшее первую букву его фамилии — Z1.

Копия Z1 в Немецком технологическом музее Берлина. Фото: Немецкий технологический музей

Компьютер хранил и обрабатывал числа в двоичном коде — от десятичного изобретатель сразу отказался. Денег у Цузе было мало, поэтому он вовсю применял подручные средства. Например, в качестве переключателей использовал металлические пластины: вместе с друзьями вручную выпилил лобзиком 20 000 пластин.

Для ввода данных установили клавиатуру из переделанной печатной машинки, а для вывода результатов — панель с мигающими лампочками.

Устройство Цузе весило полтонны и работало на моторе от пылесоса, но у него были почти все элементы современных компьютеров: регистры памяти, арифметико-логическое устройство, интерфейсы ввода и вывода.

У Z1 был отдельный блок памяти из 64 слов по 22 бита. Он умел работать с 22-битными числами с плавающей запятой. Машина складывала числа в течение 5 секунд, умножала — 10 секунд. Чтобы получить результат, она смещала пластины в определённом порядке.

Условных переходов и циклов не было. Программы (а у компьютера была система из 9 команд) в памяти не хранились, поэтому каждый раз их вводили вручную.

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

Компьютер на старых телефонных реле

Чтобы построить вторую, более совершенную, модель, Цузе долго искал деньги. Но это была не единственная проблема — началась Вторая мировая война, и он потерял связь с коллегами из Америки и Англии.

Его друг, инженер Гельмут Шреер, посоветовал заменить металлические пластины электронными лампами. Друзья предложили идею Берлинскому университету, но там их назвали фантазёрами, потому что они просили две тысячи радиоламп и несколько тысяч ламп накаливания. В то время никто не использовал в одном устройстве больше ста радиоламп.

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

В 1940 году изобретателя поддержал Институт аэродинамических исследований, и он начал строить Z2. Пластины заменили более надёжными электромеханическими реле. Денег не хватало, поэтому использовали детали из телефонов.

К концу 1940 года модель Z2 была готова. Вычислительный блок состоял из 800 реле, а память — по-прежнему из пластин. Данные вводили с клавиатуры и перфолент (Цузе пробивал отверстия в старой киноплёнке). Блок памяти Z2 состоял из 16 слов по 16 бит, умножение компьютер выполнял уже за 5 секунд, сложение — за 0,8 секунды.

Машина для расчёта полёта крылатых ракет

Вскоре Цузе начал разработку Z3 — в нём сохранили логическую структуру Z1 и Z2, но полностью отказались от пластин. Компьютер был готов в декабре 1941 года.

Конрад Цузе возле копии Z3 в Немецком музее в Мюнхене. Фото: Немецкий музей в Мюнхене

Надёжностью и характеристиками Z3 сильно превосходил своих предшественников. Машина весила тонну, у неё была память на 64 числа с плавающей запятой на 22 разряда. Умножал и делил компьютер за 3 секунды, складывал — за 0,7 секунды.

Кроме того, Z3 умел обрабатывать арифметические исключения, когда приходилось делить на ноль или работать с числом за пределами 1020, поэтому он мог выполнять расчёты без присмотра оператора.

У Z3 было практическое применение: с его помощью рассчитывали параметры первых крылатых ракет «Фау». Позже Цузе рассказывал про опыт работы с военными:

«Слишком часто изобретатель становится фаустовским идеалистом, который мечтает улучшить мир, но проигрывает суровой реальности. Если он хочет воплотить идеи в жизнь, то должен взаимодействовать с силами, чьи взгляды выражены резко и категорично. В наше время эти силы — в основном армия и государственный управленческий аппарат. По моему опыту, шансы того, кто попытается избежать такого взаимодействия, стремятся к нулю».

Конрад Цузе

Сегодня Z3 считается первым в мире работоспособным программируемым компьютером.

Компьютер, который прятали в подвале

Когда Цузе отдал Z3 заказчику, он начал проектировать Z4. Его целью было сделать машину для серийного производства.

Одновременно Цузе разрабатывал первый язык высокого уровня, который бы пригодился для сложных расчётов. Изобретатель назвал его Plankalkül (нем. Plankalkül — исчисление планов). В этом языке были циклы, оператор условий, подпрограммы, массивы, иерархические структуры и обработка исключений.

Подробнее про Plankalkül, машинный код и первого программиста читайте в статье «Опережая время: какой язык программирования считается первым».

К декабрю 1944 года Z4 был почти готов, но во время бомбардировок Берлина его чуть не уничтожили. К счастью, Цузе смог спасти Z4 — в марте он вывез компьютер в деревню в Альпах и хранил его там три года.

Окончательно машину достроили уже в 1950 году. В то время это был единственный цифровой компьютер в Европе. Архитектурой Z4 напоминал современные ПК: его память и процессор были отдельными устройствами, программа хранилась на ленте, а операторы считывались и выполнялись последовательно. Память Z4 состояла из 32-битных, а не 22-битных машинных слов, как у предыдущих моделей.

Z4 работал с частотой 30 Гц и обрабатывал числа с плавающей запятой. Он умел складывать, вычитать, умножать и делить, извлекал квадратный корень и обрабатывал исключения. Для ввода данных использовались десятичная клавиатура и устройство считывания с перфоленты, а для вывода — печатная машинка Mercedes.

У Z4 было устройство для подготовки программ. На нём составляли и редактировали программу, а потом переносили её на перфоленту.

Компьютер использовали для сложных вычислений до 1960 года. Сегодня он находится в Немецком музее в Мюнхене.

В 1950-е годы Цузе открыл свой бизнес и начал выпускать компьютеры: популярными стали Z5, Z11, Z22, Z23. Начиная с Z22 для хранения данных он начал использовать магнитные носители.

Компьютеры Цузе использовали в авиации и университетах. Но в шестидесятых их вытеснили американские ЭВМ. Фирму Цузе купила Siemens, а изобретателю дали должность консультанта. В 1987 году за деньги Siemens Цузе сделал копию компьютера Z1. Сегодня действующий Z1 находится в Национальном технологическом музее Берлина.

Учись бесплатно:
вебинары по программированию, маркетингу и дизайну.

Участвовать

Курс

Профессия Python-разработчик

На Python пишут веб-приложения и нейросети, проводят научные вычисления и автоматизируют процессы. Язык просто выучить, даже если вы никогда не программировали. На курсе вы создадите Telegram-бота, полноценный магазин и задачник для портфолио, а Центр карьеры поможет найти работу Python-разработчиком.

Узнать про курс
Профессия Python-разработчик Узнать больше
Понравилась статья?
Да

Пользуясь нашим сайтом, вы соглашаетесь с тем, что мы используем cookies 🍪

Ссылка скопирована