Wiele źródeł podaje iż pierwszym komputerem stworzonym na świecie był amerykański
ENIAC z roku 1946. Oczywiście jest to nieprawda, to raczej pierwszy komputer o którym świat usłyszał. Przed nim były stworzone np. Harvard Mark 1 z 1944, Colossus Mark 1 z 1943, czy ABC z roku 1942. Ale czy wiecie, że tak naprawdę pierwszym komputerem była maszyna Z1 stworzona w pokoju gościnnym rodziców niemieckiego inżyniera Konrada Zuse? Opowiedzmy trochę o nim. Cześć tu Borg. RetroGralnia. Witam serdecznie na naszym kanale. Kanale poświęconym starym, komputerom, konsolom, grom i całemu zjawisku retro. Serdecznie zapraszam do subskrybcji i naciśnięciu dzwoneczka - tam poniżej, jeśli chcecie otrzymywać powiadomienia o naszych nowych filmach. Zacznijmy dzisiejszy temat. Konrad Zuse urodził się w roku 1910. Był bardzo uzdolnionym człowiekiem. Przez wiele lat nie wiedział do końca, czy chce być w swoim życiu artystą, czy inżynierem. Jego syn mówi, że właśnie dlatego 3 razy zmieniał kierunek studiów, za które płacił tworząc grafiki reklamowe. W końcu zdecydował się i w roku 1935 otrzymał dyplom ukończenia studiów inżynierii wodno-lądowej. W tamtym czasie nie miał jeszcze żadnego pojęcia o elektronice, ale powoli zaczynał myśleć o maszynach liczących. Już podczas studiów w roku 1934 doszedł do wniosku, że te wszystkie obliczenia inżynieryjne, z którymi miał do czynienia powinna wykonywać maszyna, a nie człowiek. Postawił sobie wówczas pytanie: Jakie problemy matematyczne powinna rozwiązywać maszyna licząca? Odpowiedział na nie w roku 36: Maszyna powinna tworzyć nowe parametry z parametrów już danych za pomocą pewnego przepisu, a później rozszerzył jeszcze tą odpowiedź na, parafrazując: Wykonywanie dowolnych obliczeń wynikowych z dowolnych danych wejściowych i przy pomocy zadanego przepisu. Z tą myślą Kondrad Zuse rozpoczął opracowywanie architektury swoich maszyn. Od początku było dla niego oczywiste, że maszyny takie powinny być programowalne i przyjmować instrukcje z zewnętrznego źródła - taśmy perforowanej. Oczywistym był też wybór arytmetyki binarnej, bo maszyna miała zostać oparta właśnie na binarnych elementach. Kondrad Zuse stworzył więc binarną jednostkę zmiennoprzecinkową opartą o logarytmiczną prezentację liczb, jako pierwszy używając tym samem binarnych liczb zmiennoprzecinkowych znanych ze współczesnych komputerów. Zastosował w niej sumator z jednokrokowymi przeniesieniami oraz obsługą wyjątków arytmetycznych. Stworzył także pamięć w której każda komórka mogła być adresowana z taśmy perforowanej i mogła przechowywać dowolną informację. Następnie rozpoczął tworzenie samej maszyny - która z początku nazwał V1. Nazwę tą zmienił później na Z1, by ta nie kojarzyła się z projektami rakiet. Swój pierwszy komputer budował w latach 1936-1938 i składał w pokoju gościnnym swoich rodziców. Maszyna wyposażona była w 64-ry 22-bitowe słowa pamięci, jednostkę arytmetyczną z dwoma rejestrami oraz sterowanie rozkazami z taśmy perforowanej, co robiło z niej pierwszym na świecie, swobodnie programowalny komputer binarny. Co ciekawe maszyna ta nie była oparta na przekaźnikach elektrycznych, a mechanicznych. Jedyną elektryczną jej częścią był silnik stanowiący jej zegar o prędkości 1Hz. Równie dobrze jednak maszyną można było napędzać korbką. Niestety komputer Z1 został zniszczony podczas wojny, choć on sam z wojną nie miał nic wspólnego. Na szczęście w roku 1986 Konrad Zuse postanowił odbudować swój pierwszy komputer i dzięki temu mamy na świecie jego działającą replikę. Jak widać komputer przypomina swoją konstrukcją współczesne mikroprocesory. Mamy w nim bloki pamięci, jednostkę arytmetyczną z rejestrami, układy wejścia/wyjścia, jednostkę adresująca, czy w końcu zegar całego komputera. Odbudowa komputera była dla 77 letniego Konrada Zuse dość poważnym wyzwaniem, gdyż musiał on odtworzyć wszystkie jego części, zaczynając od ponownego stworzenia rysunków technicznych, a kończąc na wytworzeniu 30 tysięcy fizycznych komponentów. Oryginalną wersję komputera Zuse sfinansował ze środków swoich i rodziny, koszty odbudowy wynoszące około 800 tysięcy marek zapewniła w większości firma Siemens. Zastosowana w komputerze pamięć mechaniczna była w momencie jej tworzenia równie szybka, jak pamięć elektroniczna, a co ciekawe zajmował mniej miejsca. Pamięć składała się z czterech blaszek i jednego prętu. Przesunięcie jednej z blaszek (pasek sterujący) przesuwało pręt z pozycji 0 na 1 i 1 na 0. Druga blaszka była blaszką testową (pasek sterujący) jej przesunięcie powodowało dla jednej z pozycji binarnych przesunięcie również trzeciej blaszki (pasek wskaźnikowy), dla drugiej z pozycji - blaszka pozostawała w bezruchu. Problemem pierwszej wersji Z1 była spora zawodność pamięci spowodowana tym, że paski metalowe były ręcznie wycinane przez Zuse i jego pomocników, a przez to czasami źle spasowane. Był to jednak tylko problem czysto techniczny, a nie projektowy. Komputer Z1 przyjmował swój program przez czytnik taśmy perforowanej, która była tak naprawdę dziurkowaną rolką zwykłej taśmy filmowej 35mm. Program zapisywany był w 8-bitowym kodzie, a maszyna przyjmowała następujące rozkazy: Pr z Odczyt zawartości komórki pamięci z do rejestru R1 lub R2. Ps z Zapis zawartości rejestru R1 do komórki pamięci z. Ls1 Dodanie liczb zmiennoprzecinkowych w rejestrach R1 i R2. Ls2 Odjęcie liczb zmiennoprzecinkowych w rejestrach R1 i R2. Lm Pomnożenie liczb zmiennoprzecinkowych w rejestrach R1 i R2. Li Podzielenie liczb zmiennoprzecinkowych w rejestrach R1 i R2. Lu Odczyt liczb dziesiętnych z urządzenia wejściowego. Ld Zapis liczb dziesiętnych na urządzenie wyjściowe. Co ciekawe Z1 posiadał nie binarne, ale jak wynika z rozkazów, dziesiętne urządzenia wejścia i wyjścia, co za tym idzie musiał przed wykonaniem obliczeń i po ich wykonaniu dokonać przeliczeń z liczb dziesiętnych na binarne i odwrotnie. Więc już w latach 1936 -1938 komputer Z1 posiadał architekturę maszyny von Neumanna, jaką posiadały komputery z lat 40 i 50. Nie posiadał jedynie wewnętrznej pamięci na program, której wykonanie było by po prostu za drogie. Maszyna Z1 była ogromnym sukcesem… ale problem zawodności metalowych blaszek spędzał Kondradowi Zuse sen z powiek. W związku z tym zbudował testowy komputer Z2, w którym mechaniczne części w jednostce arytmetyki i sterowania zastąpił przekaźnikami z centralki telefonicznej w liczbie sztuk 800. Niestety podczas wojny zostały zniszczone wszelkie ślady istnienia tej maszyny. Zuse przekonał się, iż przekaźniki były rzeczywiście niezawodne i w konsekwencji zbudował w latach 39/41 wspomagany przez przyjaciół i niewielkie dotacje rządowe następny komputer Z3 - już w pełni oparty na przekaźnikach elektrycznych, których było w sumie 2400. Z oryginalnej maszyny Z3 nie zachowało się nic, prócz jej szkicu, wszystko inne zostało zniszczone podczas wojny. W latach 1960/61 Konrad Zuse odbudował komputer Z3 w swoim przedsiębiorstwie Zuse KG w celu zademonstrowania działania tej maszyny, co miało uzasadnić jego patenty i pokazać światu dzieło jego życia (a również wykorzystać tę maszynę dla celów reklamowych). Tak jak swój pierwowzór odbudowany komputer Z3 skonstruowany został w całości z przekaźników. Pamięć Z3 (64 słowa po 22 bity każde) jest widoczna po stronie lewej. Konsola znajduje się z przodu, natomiast zmiennoprzecinkowa jednostka arytmetyki dwójkowej pojawia się po prawej stronie. Komputer Z3 mierzył około pięć metrów długości, dwa metry wysokości i 80 centymetrów grubości. Z3 w roku 1941 był jedyną na świecie niezawodną i działająca programowalną maszyną, a dodatkowo maszyną opartą o logikę binarną i działającą z liczbami zmiennoprzecinkowymi. Był maszyną praktycznie zgodną z wizją współczesnego komputera, która powstała dopiero w roku 1946 stworzona przez Johna von Neumanna i jego kolegów. Jedynym odstępstwem od niej był wspomniany wcześniej brak wewnętrznej pamięci na program, spowodowany tym, że nie dało się w tamtym momencie zbudować w sensowny sposób tak dużej pamięci. Jak wygląda przykładowy program dla komputera Z3? Weźmy np. potrzebę wyznaczenia wartości następującego wielomianu ((a4x + a3)x + a2)x + a1, przy czym współczynniki a1-a4 mamy już umieszczone w pamięci komputera w komórkach 1-4 (za pomocą instrukcji Lu i Ps) Program dla takiego problemu wyglądałby następująco: Lu Wywołanie urządzenia wejściowego w celu wprowadzenia wartości dla zmiennej x Ps 5 Zmienną x umieszczamy w komórce pamięci o adresie 5 Pr 4 Do rejestru R1 wczytujemy współczynnik a1 Pr 5 Do rejestru R2 odczytujemy zmienną x Lm Wymnażamy: R1 := R1 x R2 Pr 3 Do rejestru R2 ładujemy współczynnik a3 Ls1 Dodajemy: R1 := R1 + R2 Pr 5 Ładujemy x do R2 Lm Mnożymy: R1 := R1 x R2 Pr 2 Ładujemy a2 do rejestru R2 Ls1 Dodajemy: R1 := R1 + R2 Pr 5 Ładujemy x do rejestru R2 Lm Mnożymy: R1 := R1 x R2 Pr 1 Ładujemy a1 do rejestru R2 Ls1 Dodajemy: R1 := R1 + R2 Ld Pokazujemy wynik na urządzeniu wyjściowym Wracając do maszyny Z1 - nie była to maszyna w pełni uniwersalna, gdyż nie spełniała założeń maszyny Turinga - nie posiadając instrukcji warunkowych. Co za tym idzie nie można było na niej zaprogramować dowolnego algorytmu, a tylko pewien podzbiór algorytmów. Tutaj pierwszeństwo przyznaje amerykańskiemu komputerowi ENIAC z 1944 roku. Jednak w 1998 roku Raúl Rojas udowodnił, że na komputerze Z3 można zaimplementować maszynę Turinga, arytmetycznie symulując instrukcje warunkowe i adresowanie pośrednie, co oznaczało, że komputer ten jest teoretycznie uniwersalnym komputerem, choć z taką myślą nigdy nie był tworzony. W latach 1942/43 Zakłady Lotnicze Henschel zamówiły komputery S1 i S2. Specjalistyczne maszyny do wykonywania pomiarów skrzydeł samolotów oraz bomb S2 można uważać za pierwszy na świecie komputer przemysłowy. Przez kolejne lata, aż do końca wojny Kondrad Zuse opracowywał metody zamiany komputera arytmetycznego w maszynę bardziej uniwersalną. Od roku 1942 do 1945 - w tym samym czasie, gdy opracowywał komputer Z4 - Konrad Zuse opracowywał również zaawansowane sposoby programowania swoich maszyn (tzn. bardziej zaawansowane niż jedynie obliczenia arytmetyczne). Maszyny te nazywał Logistische Maschinen i na ich potrzeby opracował własny zaawansowany język programowania Plankalkül (skrótowiec oznaczający rachunek dla planu obliczeń), który posiadał prócz operacji arytmetycznych również zaimplementowane zasady logiki matematycznej. Konrad Zuse skupiał uwagę na problemach logicznych, które muszą być rozwiązywane za pomocą komputera. Pełna wersja języka Plankalkül została ukończona w latach 1946/47, lecz nie opublikowano jej aż do 1972. Podczas wojny trwała budowa maszyny Z4, która miała być seryjną i rozwojową wersją poprzednich komputerów. Zajęła ona ponad cztery lata i dała w wyniku dużo skromniejszy komputer niż był pierwotnie planowany. W Z4 Konrad Zuse chciał zaimplementować podprogramy. Z tego powodu zaplanował sześć czytników taśmy perforowanej oraz dwa perforatory. Jednakże wojna postawiła kres jego planom. Po wojnie firma Zuse zrekonstruowała komputer Z4, a następnie rozwijała kolejne modele maszyn. Ważnym etapem był Z22 - seryjna maszyna, pierwsza posiadająca pamieć programu, zbudowana została z 600 lamp i 2400 diod, posiadała częstotliwość zegara 150 kHz, długość słowa 38 bitów oraz bęben magnetyczny o pojemności 8 KB. W 1960 stał się dostępny model Z22R. Była to pierwsza maszyna z pamięcią na rdzeniach ferrytowych. W sumie udało się sprzedać ponad 50 takich maszyn. Firma starała się rozwijać, ale niestety powoli popadała w coraz większe problemy finansowe. W końcu w roku 1967 Zuse KG została całkowicie przejęta przez przedsiębiorstwo Siemens AG, a 1969 znak firmowy Zuse KG został usunięty przez Siemensa i Konrad Zuse opuścił swoją firmę. Pod koniec pracy zawodowej i po jej zakończeniu Konrada Zuse zajął się malarstwem. W sumie namalował około setkę obrazów olejnych. Zorganizował mniej więcej trzy tuziny wystaw jak również z powodzeniem sprzedawał swoje obrazy. Pracował pod artystycznym pseudonimem Kuno See - by uniknąć powiązania ze swoją starą działalnością. Kondrad Zuse zmarł 18 grudnia 1995. Po jego śmierci jego syn stworzył jeszcze dwie repliki komputerów Z3. Pierwszą w latach 1997-2003 o zmniejszonej o połowę pojemności pamięci, druga - pełną - w latach 2008-2010. Obie maszyny, jak i wiele innych można obejrzeć obecnie w Muzeum Konrad Zuse Museum w Hünfeld. Dziękuję dzisiaj za uwagę. Jeśli tematyka historyczna Wam się spodoba, to może będziemy ją kontynuować. Tymczasem tradycyjnie zapraszam Was do pozostawienia komentarza, subskrybcji kanału i odwiedzenia naszego serwera Discord. Mam nadzieje, że widzimy się już niedługo. Pozdrawiam. Borg. ENIAC