Z3— перша повнофункціональна програмно керована і вільно програмована в двійковому коді з плаваючою комою робоча обчислювальна машина[1], яка мала всі властивості сучасного комп'ютера. Створена німецьким інженером Конрадом Цузе і представлена увазі наукової громадськості 12 травня1941 р. Сьогодні багато хто вважає цей пристрій першим реально працюючим програмованим комп'ютером, хоча головною відмінністю від першої машини Цузе Z1 (1938) була можливість обчислення квадратного кореня.[2]
Z3 була створена Цузе на основі його перших обчислювачів Z1 та Z2. У свою чергу, вона послужила основою створення досконалішого комп'ютера Z4.
В 1942 у разом з австрійським інженером-електриком Гельмутом Шрайєром Цузе запропонував створити на базі Z3 комп'ютер нового типу, замінивши телефонні реле вакуумними електронними лампами, що повинно було сильно підвищити надійність і швидкодію машини. Передбачалося, що новий комп'ютер можна буде використовувати для криптографії і розшифровки закодованих повідомлень. Однак у зв'язку із забороною на довготривалі наукові розробки в роки війни пропозицію інженерів відхилили.[3]
Через деякий час в інших країнах також з'явилися перші обчислювальні машини. Це були комп'ютери «Марк I», «Колос» та «ЕНІАК». У той же час оригінальна машина Конрада Цузе займала значно менше місця і коштувала набагато дешевше, ніж створений двома роками пізніше американський комп'ютер «Марк I».
Z3 використовувався для розрахунків, пов'язаних з конструюванням літаків і керованих ракет німецьким Дослідницьким інститутом аеродинаміки (нім.Aerodynamische Versuchsanstalt). Єдиний зразок комп'ютера разом з іншими ранніми розробками Цузе був знищений під час нальоту союзницької авіації в 1945 році.
В 1960 році у компанією Zuse KG була виконана реконструкція Z3. В 1967 році ця модель була виставлена і привернула велику увагу відвідувачів монреальської виставки, а в даний час вона розміщена в експозиції «Німецького музею» в Мюнхені (Німеччина).[1]
Перший проект програмованої обчислювальної машини був створений в середині XIX ст. Чарльзом Беббіджем. У той час він не міг бути реалізований, однією з причин чого була десяткова машина і набагато складніша, ніж двійкова Z3. Хоча коли в 1991 рік у на основі оригінальних робіт Беббіджа була створена реконструкція його Різницевої машини, вона виявилася цілком працездатною. Знайома Беббіджа Ада Лавлейс була першим теоретичним програмістом, друкуючи програми для неіснуючої машини. Конрад Цузе став першим програмістом-практиком.
Американський комп'ютер «ENIAC» був створений на 4 роки пізніше Z3. Схема «ENIAC» була заснована на вакуумних електронних лампах, в той час як Z3 використовував електромеханічні реле. Тим не менш «ENIAC» був десяткової машиною, а Z3— вже двійковій.[4] До 1948 року для перепрограмування «ENIAC» фактично потрібно було перекомутувати заново, в той час як Z3 вмів зчитувати програми з перфорованої стрічки. В основі сучасних комп'ютерів лежать транзисторні схеми, а не релейні або лампові перемикачі, як на Z3 і «ЕНІАК», проте їх базова архітектура набагато більш схожа на архітектуру першого.
Для зберігання програм для Z3 використовувалася зовнішня перфорована стрічка. «Манчестерське дитя» (англ.The Manchester Baby) 1948 та EDSAC1949 року були першими комп'ютерами з внутрішнім зберіганням програм, що реалізовують концепцію, часто приписувану Джону фон Нейману і його колегам, який виклав її в документі 1945 року. Патентна заявка Конрада Цузе, попри те, що сам патент був відхилений, згадувала про схожу концепцію майже на 10 років раніше, в 1936 році.
Реалізація циклів на Z3 була можлива, однак можливості створення умовних переходів не існувало. Тим не менш, в 1998 році було показано, що цей комп'ютер все-таки може відтворити поведінку універсальної машини Тюрінга (правда, при допущенні необмеженого обсягу збережених даних і нульовій ймовірності помилок). Це непрактично, але й сама машина Тюрінга є дуже непрактичним пристроєм, придуманим тільки для демонстрації теоретичних ідей простоти і універсальності, а не ефективності.
З прагматичної точки зору набагато більш важливо те, що Z3 мав досить практичний набір інструкцій, зручних для типових технічних програм тих років. Конрад Цузе перш за все був цивільним інженером, і почав створювати комп'ютери для полегшення своєї професійної діяльності. Саме тому його машини так схожі на сучасні комп'ютери.
Знакомьтесь: компьютер = Understanding computers: Computer basics: Input/Output(рос.); Пер. с англ. К.Г.Батаева; Под ред. и с пред. В.М.Курочкина— М.: Мир, 1989.— 240 с., ил. ISBN 5-03-001147-1
О.Вудз, Д.Вудз, Д.Фурлонг, С.Фурлонг, С. Е.Е.Роу и др. Язык компьютера = Understanding computers: Software: Computer Languages(рос.); Пер. с англ. С.Е.Морковина и В.М.Ходукина; Под ред. и с пред. В.М.Курочкина— М.: Мир, 1989.— 240 с., ил. ISBN 5-03-001148-X