Bugün öğrendim ki: İlk üretilen bilgisayar olan Z3'ün belleği yalnızca 176 bayt iken; 100 yıldan fazla bir süre önce tasarlanan ilk bilgisayarın belleği 16,6 kB idi.
Önerilen mekanik genel amaçlı bilgisayar
Analitik motor, İngiliz matematikçi ve bilgisayar öncüsü Charles Babbage tarafından tasarlanan, önerilen dijital mekanik genel amaçlı bir bilgisayardı. İlk olarak 1837'de Babbage'ın daha basit bir mekanik hesap makinesi tasarımı olan fark motorunun halefi olarak tanımlanmıştır.
Analitik motor, aritmetik mantık birimi, koşullu dallanma ve döngüler şeklinde kontrol akışı ve entegre bellek içeriyordu, bu da onu, modern terimlerle Turing-tamamlayıcısı olarak tanımlanabilecek ilk genel amaçlı bilgisayar tasarımı yapıyordu. Başka bir deyişle, analitik motorun yapısı, elektronik çağda bilgisayar tasarımını esasen hüküm süren yapı ile aynıydı. Analitik motor, Charles Babbage'ın en başarılı başarılarından biridir.
Babbage, baş mühendisiyle olan anlaşmazlıklar ve yetersiz fonlama nedeniyle hiçbir makinesinin inşasını tamamlayamadı. 1837'de Babbage tarafından öncü analitik motoru önermesinden bir yüzyıldan fazla sonra, Konrad Zuse 1941'de Z3'ü ilk genel amaçlı bilgisayar olarak inşa etti.
Tasarım
[düzenle]
Babbage'ın mekanik bir hesaplama cihazına ilk girişiminde, Fark Motoru, yaklaşan polinomlar oluşturmak için sonlu farkları değerlendirerek logaritmaları ve trigonometrik fonksiyonları tablolaştırmak üzere tasarlanmış özel amaçlı bir makineydi. Bu makinenin yapımı asla tamamlanmadı; Babbage baş mühendisi Joseph Clement ile anlaşmazlık yaşadı ve nihayetinde İngiliz hükümeti projenin fonlarını çekti.
Bu proje sırasında, Babbage çok daha genel bir tasarım olan analitik motorun mümkün olduğunu fark etti. Analitik motorun tasarımına yönelik çalışmalar yaklaşık 1833'te başladı.
Giriş, programlar ("formüller") ve verilerden oluşuyordu ve makineye o zaman mekanik dokumalarda, örneğin Jacquard dokumasında kullanılıyor olan delikli kartlar aracılığıyla sağlanacaktı. Çıktı için makinenin bir yazıcı, bir eğri çizici ve bir zil olacaktı. Makine ayrıca daha sonra okunacak kartlara numaralar da puanlayabilecekti. Sıradan on tabanlı sabit nokta aritmetiğini kullandı.
Her biri 50 ondalık basamaktan oluşan (yaklaşık 16,6 kB) 1000 sayı tutabilen bir depo (yani, bir bellek) olacaktı. Aritmetik işlem birimi ("dövme") dört aritmetik işlemi, karşılaştırma ve isteğe bağlı olarak karekökleri gerçekleştirebilecekti. Başlangıçta (1838) genel olarak dairesel bir düzende, uzun depo bir tarafa çıktığı kendisine doğru eğrilmiş bir fark motoru olarak tasarlandı. Daha sonraki çizimler (1858) düzenli bir ızgara düzenini gösteriyor. Modern bir bilgisayardaki merkezi işlem birimi (CPU) gibi, dövme, kendi dahili prosedürlerine (modern CPU'lardaki mikro kod ile kabaca eşdeğer) dayanan, kullanıcının programının belirtebileceği daha karmaşık talimatları yerine getirmek için "silindirler" adı verilen dönen silindirlere yerleştirilen çubuklar şeklinde saklanacaktı.
Kullanıcılar tarafından kullanılacak programlama dili, günümüzün makine dillerine benziyordu. Döngüler ve koşullu dallanmalar mümkündü ve bu nedenle, daha sonra Alan Turing tarafından tanımlanan dil Turing-tamamlayıcı olacaktı. Üç farklı delikli kart türü kullanıldı: biri aritmetik işlemler için, biri sayısal sabitler için ve biri yük ve depo işlemleri için, sayıları depodan aritmetik işlem birimine veya geriye taşıyor. Üç farklı kart türü için üç ayrı okuyucu vardı. Babbage, 1837 ile 1840 arasında analitik motor için yaklaşık iki düzine program ve daha sonra bir program geliştirdi. Bu programlar polinomları, yinelemeli formülleri, Gauss eliminasyonunu ve Bernoulli sayılarını ele alıyor.
1842'de İtalyan matematikçi Luigi Federico Menabrea, 1840'ta Turin'i ziyaret ettiği sırada Babbage'ın verdiği derslere dayanarak, Fransızca olarak makinenin bir tanımını yayınladı. 1843'te açıklama, sekiz yıl önce makinaya ilgi duyan Ada Lovelace tarafından İngilizceye çevrildi ve kapsamlı notlar eklendi. Menabrea'nın makalesine yaptığı eklemeler nedeniyle, makineyi kullanarak Bernoulli sayılarını hesaplama yöntemini içerdiği için (geniş çapta ilk tam bilgisayar programı olarak kabul edildi), ilk bilgisayar programcısı olarak kabul edilmiştir.
Yapım
[düzenle]
Yaşamının sonlarında Babbage, makinenin basitleştirilmiş bir sürümünü inşa etmenin yollarını aradı ve 1871'deki ölümünden önce onun bir kısmını bir araya getirdi.
1878'de, Bilim İlerleme Derneği'nin bir komitesi analitik motoru "mekanik ustalığın bir harikası" olarak nitelendirdi, ancak inşasına karşı tavsiyede bulundu. Komite, makinenin faydasını ve değerini kabul etti, ancak yapım maliyetini tahmin edemedi ve makine inşa edildikten sonra düzgün çalışıp çalışmayacağından emin değildi.
1880 ile 1910 arasında aralıklarla Babbage'ın oğlu Henry Prevost Babbage, dövmenin ve baskı cihazının bir kısmını inşa etti. 1910'da π'nin katlarının (yanlış) bir listesini hesaplayabildi. Bu, tüm motorun yalnızca küçük bir parçasıydı; programlanabilir değildi ve belleği yoktu. (Bu bölümün popüler görüntüleri bazen tüm dövme veya hatta tüm motoru ima eden yanlış etiketlidir.) Henry Babbage'ın "analitik motor dövmesi" Londra Bilim Müzesi'nde sergilenmektedir. Henry ayrıca, daha küçük bir depolama kapasitesine sahip, tam motorun bir gösterim versiyonunu inşa etmeyi önerdi: "belki ilk makine için on (sütun) yeter, her birinde on beş tekerlek". Böyle bir versiyon, her biri 25 basamaklı 20 sayıyı manipüle edebilirdi ve bu sayılarla ne yapılacağı hala etkileyici olabilirdi. Henry Babbage 1888'de yazdığı gibi, "(yirmi bin) kartın analitik bir motor için gerekliyse kullanılmasının nedeni yok; matematikçilerin amaçları için".
1991'de Londra Bilim Müzesi, Babbage'ın analitik motorun geliştirilmesi sırasında keşfettiği iyileştirmeleri içeren Babbage'ın Fark Motoru No. 2'nin tam ve işleyen bir örneğini inşa etti. Bu makine, Babbage'ın tasarımlarının kendi zamanının üretim teknolojisi kullanılarak üretilemeyeceği önerisini ortadan kaldırarak Babbage'ın kullanabileceği malzemeler ve mühendislik toleransları kullanılarak inşa edildi.
Ekim 2010'da John Graham-Cumming, Babbage'ın planlarının ciddi tarihsel ve akademik çalışmasını, daha sonra fiziksel analitik motoru inşa etmeyi mümkün kılacak tam işleyen sanal bir tasarım oluşturma bakış açısıyla "halka abonelik" yoluyla fon toplamak için bir "Plan 28" kampanyası başlattı. Mayıs 2016 itibariyle, Babbage'ın orijinal tasarım çizimlerinden henüz tutarlı bir anlayış elde edilmediğinden, gerçek yapım girişiminde bulunulmamıştır. Özellikle, Lovelace'ın Bernoulli programı için gerekli olan indeksli değişkenlerle başa çıkıp çıkmayacağı belirsizdi. 2017'ye gelindiğinde, "Plan 28" çabası, tüm kataloglanmış malzemenin arama yapılabilen bir veritabanının mevcut olduğunu ve Babbage'ın hacimli Karalama Defterlerinin ilk incelemesinin tamamlandığını bildirdi.
Babbage'ın orijinal çizimlerinin birçoğu dijitalleştirildi ve çevrimiçi halka açık.
Talimat kümesi
[düzenle]
Babbage'ın, modern bir işlemci kılavuzu tarzında motor için açık bir talimat kümesi yazdığı bilinmiyor. Bunun yerine, yürütme sırasında durumlar listesi olarak programlarını gösterdi, her adımda hangi işlemcinin çalıştırıldığını gösteriyor ve kontrol akışının nasıl yönlendirileceğine dair az miktarda gösterge içeriyordu.
Allan G. Bromley, kart destesinin koşullu dallanma için koşulları test ettikten sonra ileri ve geri yönlerde okunabileceğini varsaymıştır, bu da motorun Turing-tamamlayıcı yapısını sağlayacaktır:
... kartlar ileri ve geri hareket ettirilebilir (ve böylece döngü yapabilir)...
1845'te ilk kez çeşitli hizmet fonksiyonları için kullanıcı işlemleri, en önemlisi kullanıcı programlarındaki döngüler için etkili bir kullanıcı kontrol sistemi dahil edildi. İşlemin ve değişken kartların dönme yönünün nasıl belirlendiği konusunda hiçbir bilgi yok. Diğer kanıtların yokluğunda, hem işlem hem de değişken kartların Babbage'ın örnek programlarında kullanılan döngüleri uygulamak için gerekli olduğu gibi sadece geriye doğru döndürülebileceği varsayımı benimsenmiştir. Hareket yönünü kullanıcının kontrolü altına koymada mekanik veya mikro programlama zorluğu olmazdı.
Motorlarının taklitçisinde, Fourmilab diyor ki:
Motorun Kart Okuyucusu, kartları baştan sona bir zincirde sırayla işlemek için sınırlandırılmamıştır. Ayrıca okuduğu kartlar tarafından yönlendirilebilir ve Dövme'nin çalışma kolunun etkinleştirilip etkinleştirilmediğini bilerek, kart zincirini ileriye, ara kartları atlayarak veya geriye doğru, daha önce okunan kartların bir kez daha işlenmesine neden olarak ilerletebilir.
Bu taklitçi, Babbage'ın orijinal eserlerine dayanmak yerine yazarları tarafından oluşturulmuş yazılı bir sembolik talimat kümesi sağlamaktadır. Örneğin, faktöriyel program şu şekilde yazılabilir:
N0 6 N1 1 N2 1 × L1 L0 S1 – L0 L2 S0 L2 L0 CB?11
Burada CB, kontrol akışını atlamasına neden olan koşullu dallanma talimatı veya "kombinasyon kartı" veya bu durumda 11 karta geriye doğru.
Etki
[düzenle]
Tahmini etki
[düzenle]
Babbage, otomatik bir bilgisayarın, şimdi algoritmik verimlilik olarak bilinen alanda ilgi uyandıracağını anladı ve Felsefenin Yaşamından Bölümler'de "Analitik bir motor var oldukça, bilimin geleceğini zorunlu olarak yönlendirecektir. Herhangi bir sonuç onun yardımıyla arandığında, o zaman soru ortaya çıkacaktır - bu sonuçlar makinenin en kısa sürede ulaştığı hesaplama yoludur? "
Bilgisayar bilimi
[düzenle]
1872'den itibaren Henry, babasının çalışmalarını özenle sürdürdü ve daha sonra 1875'te emekliliğinde aralıklarla devam etti.
Percy Ludgate, 1914'te motor hakkında yazdı ve 1909'da kendi analitik motor tasarımını yayınladı. Ayrıntılı olarak çizilmiş ancak asla inşa edilmemiş ve çizimler asla bulunamamıştır. Ludgate'ın motoru, Babbage'ınkinden çok daha küçük (yaklaşık 8 kübik ayak (230 L), bu da 2 ayak (61 cm) kenar uzunluğunun küpüne karşılık gelir) olacaktır ve varsayımsal olarak iki 20 ondalık basamaklı sayıyı yaklaşık altı saniyede çarpma yeteneğine sahip olacaktır.
Babbage'dan esinlenen, okuma-yazma korumalı bir program tarafından kontrol edilecek teorik bir elektrikli mekanik hesaplama makinesi tasarladı. Makale ayrıca kayan nokta aritmetiği fikrini de içermektedir.
1920'de arimometre icadının 100. yıldönümünü kutlamak için Torres, Paris'te (muhtemelen uzaktan) bir yazıcıya bağlanmış bir aritmetik birimden oluşan Elektromekanik Arimometre'yi sundu, burada komutlar yazılabilir ve sonuçlar otomatik olarak basılabilir.
Vannevar Bush'un "Araçsal Analiz" makalesi (1936), Babbage'ın çalışmalarına çeşitli atıfta bulundu. Aynı yıl bir elektronik dijital bilgisayar inşa etme sorunlarını araştırmak için Hızlı Aritmetik Makine projesini başlattı.
Bu temel çalışmalara rağmen, Babbage'ın çalışmaları tarihsel olarak unutuldu ve analitik motor, 1930'lar ve 1940'larda çalışmalarına başladıklarında elektrikli mekanik ve elektronik bilgisayarların üreticileri tarafından bilinmiyordu, bu da Babbage'ın önerdiği mimari yeniliklerin tekrar icat edilmesine yol açtı. 1937 ve 1945 yılları arasında hızlı bir şekilde modası geçmiş elektrikli mekanik hesap makinesi Harvard Mark I'i inşa eden Howard Aiken, Babbage'ın çalışmalarını kendi statüsünü artırmanın bir yolu olarak muhtemelen övdü, ancak analitik motorun mimarisini Mark I'in inşası sırasında bilmiyordu ve analitik motorun inşa edilmiş kısmına yaptığı ziyaretin "hayatımın en büyük hayal kırıklığı" olduğunu düşündü. Mark I, analitik motordan hiçbir etki göstermedi ve analitik motorun en öncü mimari özelliği olan koşullu dallanmayı eksik bıraktı. J. Presper Eckert ve John W. Mauchly benzer şekilde, ilk elektronik genel amaçlı bilgisayar ENIAC'ın tasarımının tamamlanmasından önce Babbage'ın analitik motor çalışmaları hakkında ayrıntılı bilgi sahibi değillerdi.
Diğer erken bilgisayarlarla karşılaştırma
[düzenle]
Analitik motor inşa edilmiş olsaydı, dijital, programlanabilir ve Turing-tamamlayıcı olurdu. Ancak çok yavaş olacaktı. Luigi Federico Menabrea, Analitik Motorun Taslağı'nda "Bay Babbage, motoruyla her biri yirmi rakam içeren iki sayının çarpımını üç dakikada oluşturabileceğine inanıyor". Karşılaştırma için Harvard Mark I, aynı görevi sadece altı saniyede gerçekleştirebilirdi (bilgisayarın Turing tamamlayıcısı olduğunun tartışılmasına rağmen; ENIAC, hızlı olurdu). Modern bir CPU, aynı şeyi bir milyarın altında bir saniyede yapabilir.
İsim İlk işleyen Sayı sistemi Hesaplama mekanizması Programlama Turing tamamlanmış Bellek Fark motoru 1990'lara kadar inşa edilmedi (1820'ler tasarımı) Ondalık Mekanik Programlanabilir değil; polinom farklılıklarının ilk sayısal sabitleri fiziksel olarak ayarlanmıştır Hayır Temel durumlar millerin eksenlerindeki analitik motor İnşa edilmedi (1830'lar tasarımı) Ondalık Mekanik Delinmiş kartlar tarafından program kontrolü Evet (tasarım; inşa edilmedi) millerin eksenlerindeki temel durumlar Ludgate'ın Analitik Motoru İnşa edilmedi (1909 tasarımı) Ondalık Mekanik Delinmiş kartlar tarafından program kontrolü Evet (inşa edilmedi) çubukların temel durumları Torres'in Analitik Makinesi 1920 Ondalık Elektromekanik Programlanabilir değil; giriş ve çıkış ayarları bağlantı kablolarıyla belirtildi Hayır Mekanik röleler Zuse Z1 (Almanya) 1939 İkili kayan nokta Mekanik Programlanabilir değil; şifre giriş ayarları bağlantı kablolarıyla belirtildi Hayır Çubukların temel durumları Bombe (Polonya, İngiltere, ABD) 1939 (Polonyalı), Mart 1940 (İngiliz), Mayıs 1943 (ABD) Karakter hesaplamaları Elektromekanik Programlanabilir değil; şifre giriş ayarları bağlantı kablolarıyla belirtildi Hayır Rotorların temel durumları Zuse Z2 (Almanya) 1940 İkili sabit nokta Elektromekanik (mekanik bellek) Delinmiş 35 mm film stoğu ile program kontrolü (koşullu dalış yok) Hayır Çubukların temel durumları Zuse Z3 (Almanya) Mayıs 1941 İkili kayan nokta Elektromekanik Delinmiş 35 mm film stoğu ile program kontrolü (ancak koşullu dalış yok) Teorik olarak (1998) Mekanik röleler Atanasoff–Berry Bilgisayarı (ABD) 1942 İkili Elektronik Programlanabilir değil; doğrusal sistem katsayıları delinmiş kartlar kullanılarak girildi Hayır Yeniden üreten kapasitör belleği Colossus Mark 1 (İngiltere) Aralık 1943 İkili Elektronik Bağlantı kabloları ve anahtarlar ile program kontrolü Hayır Termoelektrik valfler (vakum tüpleri) ve tiyratronlar Harvard Mark I – IBM ASCC (ABD) Mayıs 1944 Ondalık Elektromekanik 24 kanallı delinmiş kağıt bantla program kontrolü (ancak koşullu dalış yok) Tartışmalıdır Mekanik röleler Colossus Mark 2 (İngiltere) 1 Haziran 1944 İkili Elektronik Bağlantı kabloları ve anahtarlar ile program kontrolü Tahmini Zuse Z4 (Almanya) Mart 1945 (veya 1948) İkili kayan nokta Elektromekanik Delinmiş 35 mm film stoğu ile program kontrolü 1950'de Mekanik röleler ENIAC (ABD) Aralık 1945 Ondalık Elektronik Bağlantı kabloları ve anahtarlar ile program kontrolü Evet Vakum tüpü triod fli-floplar Manchester Bebek (İngiltere) Haziran 1948 İkili Elektronik Klavye ile belleğe girilen ikili program (ilk elektronik depolanan program dijital bilgisayar) Evet Williams katot ışın tüpü EDSAC (İngiltere) Mayıs 1949 İkili Elektronik Beş bitlik opcode ve değişken uzunlukta operand (geniş bir topluluğa hesaplama hizmeti sunan ilk depolanan program bilgisayarı) Evet Cıva gecikme hatları
Popüler kültürde
[düzenle]
Siberpunk romancıları William Gibson ve Bruce Sterling, Babbage'ın fark ve analitik motorlarının Viktorya toplumuna sunulduğu alternatif tarihli bir steampunk romanı olan Fark Motoru'nun ortak yazarlarıdır. Roman, erken hesaplama teknolojisinin getireceği sonuçları ve etkileri üzerine kafa patlatmaktadır.
Modem aracılığıyla Moriarty, Babbage'ın analitik motorunun gerçekten tamamlandığı ve İngiliz hükümeti tarafından yüksek derecede gizli olarak sınıflandırıldığı alternatif bir tarihi anlatıyor. Sherlock Holmes ve Moriarty'nin karakterleri gerçekte analitik motor için yazılmış prototip programlardı. Bu kısa öykü, Holmes'un programının modern bilgisayarlarda uygulanması ve modern analitik motor karşılıkları olan düşmanı ile bir kez daha yarışmak zorunda kalmasıyla devam ediyor.
Sydney Padua, Lovelace ve Babbage'ın Heyecan Verici Maceraları web çizgi romanında Fark Motoruna benzer bir kurgu kullanmaktadır. Roman, Ada Lovelace ve Babbage'ın analitik motoru inşa etmiş ve Kraliçe Victoria'nın isteği üzerine suçla mücadele için kullanmış olduğu alternatif bir tarih sunmaktadır. Çizgi roman, Babbage ve Lovelace'ın biyografileri ve yazışmaları üzerine titiz bir araştırmaya dayanmaktadır ve sonra komik bir etki için çarpıtılmıştır.
Orion'un Kolu çevrimiçi projesi, tamamen duyarlı Babbage'dan esinlenen mekanik bilgisayarlar olan Machina Babbagenseii'leri içeriyor. Her biri büyük bir asteroit büyüklüğünde, yalnızca mikro yerçekimi koşullarında hayatta kalabilir ve insan beyninin hızının %0,5'i hızla veri işler.
Charles Babbage ve Ada Lovelace, motorun görüntülendiği ve atıfta bulunulduğu bir Doktor Kimya bölümü olan "Gizli ajanlar Bölüm 2" de yer almaktadır.
Referanslar
[düzenle]
Kaynakça
[düzenle]
Bilgisayar programlama portalı