Yazarlar Sözlük Makaleler Yardım Masası Gözlük Forum İstatistik

Geçmişten Günümüze Bilgisayar (mizah)


Özet
...Ama aslında abaküsün günümüz bilgisayarlarıyla herhangi bir benzerliği olduğu söylenemez. Bir kere abaküsle İnternet'e bağlanamazsınız. Counter Strike da yok. Eee? Nasıl bilgisayar bu? Varsa yoksa boncuk! Üç boncuk sağa, iki boncuk sola. Ne anladım ki ben bundan?

Yazar Hakkında
Şehir :
İstanbul

Üyelik :
06 Ocak 2005 06:46

Son Giriş :
14 Ocak 2014 07:31
» Mesaj gönder
» fizikci hakkında
» Sözlükte fizikci
Bilgisayarın Tarihçesi

Bilgisayar ilk defa milattan önce II. yüzyılda, Çinliler tarafından mayın tarlası oynamak için düşünülmüş bir makinedir. Fakat o dönemde henüz mayın icat edilmediği için bilgisayar icadından vazgeçilmiş ve - biraz da işin kolayına kaçılarak - pusula icat edilmiştir. Çinliler'den sonra tarihte ilk defa bilgisayar kavramına Yunanlılar'da rastlıyoruz. Yunanlılar abaküs denilen bir makine icat etmişlerdi. Bu makine ile toplama, çıkarma ve çarpma işlemlerini yapabiliyorlardı. Bölme işlemi ise yapılamıyordu. Çünkü abaküs ile bölme işlemi yapma denemeleri abaküsün paramparça olmasıyla birlikte başarısızlığa uğramıştı. Neyseki o dönemde bölmek çok da gerekli değildi. İnsanlar toplayıp, çıkarıp, çarparak da mutlu olabiliyordu.

Bir kaç sıra tel üzerine geçirilmiş boncuklardan ibaret olan bu makine kısa sürede farklı milletler tarafından benimsendi. Türkler abaküsle ilk defa Köksal* Han komutasındaki Yunanistan seferinde karşılaştı. Köksal Han, beğeniyle karşıladığı bu makineye boncuksayar ismini vermişti. Boncuk saymakta pratik bir fayda görmeyen Türkler kısa sürede bu makineyle uğraşmaktan vazgeçmiş ve Türk kültüründe abaküs, çocukları eğlendirmek için kullanılabilecek bir çeşit oyuncak olarak kalmıştır. Halen ilkokul birinci sınıftaki çocuklara bu oyuncak verilir.

Bilgisayarın atasının abaküs olduğunu iddia etmek alışılagelmiş bir yazar tavrıdır. Biz de bu alışkanlığı bozmayalım dedik, abaküsten bahsettik. Ama aslında abaküsün günümüz bilgisayarlarıyla herhangi bir benzerliği olduğu söylenemez. Bir kere abaküsle İnternet'e bağlanamazsınız. Counter Strike da yok. Eee? Nasıl bilgisayar bu? Varsa yoksa boncuk! Üç boncuk sağa, iki boncuk sola. Ne anladım ki ben bundan?

Abaküs uzunca bir süre kullanılmış, bu durum bilgisayarın icat edilmesini yüzyıllar boyu geciktirmiştir. Arapların sıfırı bulmasıyla abaküs ilk büyük problemle karşılaştı. Buna n0k (number zero problem) deniyordu. Sıfır boncuk abaküs üzerinde gösterilemiyordu. Sıfır boncuğu sola çekmeye çalışan Yunan bilim adamları "segmentation fault" hatasıyla karşılaşmış, mavi boncuğa düşmüşlerdi. (Mavi boncuk günümüz bilgisayarlarında mavi ekran olarak görülür.) Her ne kadar dönemin Abasoft isimli başı çeken abaküs firması sıfır problemiyle ilgili patch neyin çıkarmaya çalışmışsa da, abaküsün makus talihi değişmedi ve bir daha dirilmemek üzere tarihin karanlıklarına gömüldü. (The History of Abacus, O'Reilly Books, 1994)

Abaküsten sonra bilgisayar tarihinde zikredilebilecek bir diğer buluş Mantık'tır. Mantık, p ise q, q ise r gibi önermelerle beynin çalışma mantığını anlamaya çalışan, özellikle lise birinci sınıf öğrencilerinin Matematik'ten nefret etmesini sağlamak için geliştirilmiş gereksiz bir bilim dalıdır. Bu bilim dalının gerekli olduğunu düşünen bilim adamları "p ve q veya r gerekli ise mantık neden gerekli olmasın?" gibi söylemlerle bilim dünyasını meşgul etmiş, ortaya somut birşey koyamamış, tesadüfen bilgisayarın temel mantığını formüle eden boolean cebirini keşfetmişlerdir. Soyadı Boole olacak kadar kendini bu konuya kaptırmış bir bilim adamı olan George Boole, onluk sayma sistemindeki başarısızlığını ikilik sayma sistemiyle ilgili boolean cebirini geliştirerek örtbas etmeye çalışmış, bu arada hasbelkader bilgisayarın felsefi temellerini de inşa etmiştir.

Şimdilik bu kadar tarih yeter. Son olarak ilk mekanik bilgasayarı Charles Babbage'ın, elektrikli olanını da Konrad Zuse'nin icat ettiğini belirterek daha heyecanlı konulara yelken açalım.

Kendi bilgisayarımızı yapalım!

Malzemeler :
  - 1 adet televizyon,
  - 1 adet daktilo,
  - 2 metre kadar kablo,
  - 1 tane fare (cansız)

Yapılışı :
Daktiloyu televizyonun önüne koyun. Daktilonun herhangi bir yeriyle televizyonun anten girişini kabloyla birleştirin. Ölü fareyi daktilonun sağına koyup kuyruğunu daktilonun altına sıkıştırın. İşte size bilgisayar! Hahaha! Şaka şaka. Kolay mı öle bilgisayar yapmak? Önce bilgisayarın yapısından bahsetmemiz lazım. Nelerden oluşur? Nasıl çalışır? Bütün bu konuları irdeledikten sonra hala bilgisayar yapmak isterseniz, artık size kalmış. Yiyin kendinizi.

Bilgisayarın Yapısı

Bilgisayarlar hard ve soft ware'den oluşur. Hard sert, soft yumuşak demektir. Hard kısımları (ekran, fare, klavye gibi) vurulduğunda acıtacak cinsten malzemelerden yapılmıştır. Hatta ekran öldürücü bile olabilir. Fare az acıtır. Klavyenin tuşları çıkartılıp rakibe taş niyetine atılabilir ama hafif oldukları için fazla acıtmazlar. Soft kısımları ise rüya gibi, aşk gibi soyuttur. Yazı şeklinde yazılıp, bilgisayarın hafızasına yüklenip, oradan execute ettirilirler. Bilgisayarın sert kısımları bu yumuşak yazılarla yönetilir. Bu şekilde bilgisayar faydalı bir insan olmaya çalışır. Yumuşak yazılara bilgisayar terminolojisinde program denir. Programlar programlama dilleri denilen özel dillerle yazılırlar. Bu diller insanoğlunun kullandığı dillerden farksızdır. Kendilerine has gramerleri vardır, kelimeleri vardır, cümleleri vardır. Normal bir insan 3-4 aylık bir eğitimle herhangi bir programlama dilinde akıcı olarak konuşabilir. Ama bu gereksizdir, çünkü bilgisayarların kulağı yoktur. Bu yüzden programcılar programlama dilleriyle konuşmak yerine yazmayı tercih ederler.

Programlama Dilleri

1. C# (sişarp diye okunur)

İlk bulunan programlama dilidir. Bu dil ile mesela "is this a book?" demek için "this.isABook()" yazmanız gerekir. Evet, İngilizce'ye çok benzeriyor. Sadece soru cümlelerini olumlu cevap cümlesine dönüştürüp this'den sonra bir nokta koyuyorsunuz. Bir örnek daha verelim : "is this English or CSharp?" demek için "this.isEnglishOrCSharp()" yazabilirsiniz. Gördüğünüz gibi gayet kolay. Asıl zor olanı merhaba dünya programı yazmaktır. İnceleyiniz:
public interface ISaluting
{
    void Salute();
}
public class Program : ISaluting
{
    #region ISaluting implementation
    public void Salute()
    {
        Console.WriteLine("Merhaba dünya");
    }
    #endregion

    public static void Main() // burası zorunlu
    {
        ISaluting p = new Program(); // bunu yazmasanız da olur
        p.Salute();                  // burası size kalmış
    }
}

Evet yukarıdaki örnekte basitçe çıktıya "Merhaba Dünya" yazan bir program yazdık. Çok açık olduğu için teferruata girmiyorum. Son olarak C# dilinin kullanım alanlarından bahsetmek isterim: C# özellikle NASA tarafından "evrende bizden başka akıllı varlıklar var mı?" araştırmalarında kullanılan bir dildir. Bu kapsamda C# ile bir düzine "Merhaba Mars", "Merhaba Jüpiter", vb. program yazılmıştır. Henüz bu gezegenlerin hiç birinden cevap gelmemiştir. NASA mühendisleri "uzaylılarla iletişimde remoting yerine web service mi kullansak acaba?" diye düşünmektedir.

2. Pascal (Paskal diye okunur)

1634'de Blaise Pascal tarafından bulunan bu programlama dili, özellikle Binom açılımı ve Pascal üçgeninin hesaplanmasında kullanılır. Borland firmasında chief architect olarak çalışan Pascal, ilk Pascal derleyicisini yazan kişidir. Blaise Pascal'ın oğlu Niklaus Wirth bu dile sonradan çeşitli katkılarda bulunmuştur.

Pascal ile bir merhaba binom örneği vermeden geçmeyelim:
program merhaba_binom;
begin
   writeln("      1      ");
   writeln("    1 + 1    ");
   writeln("  1 + 2 + 1  ");
   writeln("1 + 3 + 3 + 1");
end;

Örnek koddan da görüleceği üzere Pascal dili binom açılımını gayet başarılı bir şekilde yapmaktadır.

3. Makine dili (aynı şekilde okunur)

Programlama dilleri arasında belki de en karmaşık olanı budur. Çince öğrenmek bundan çok daha kolaydır. Aşağıda INTEL x386 mimarisi için merhaba dünya örneği verilmiştir.
D62F87A52A83E4F8C7
38A7B5C288C5D27E2F // merhaba
A83E4F8C7D62F87A52 // dünya
8C5D27E2F38A7B5C28


Birinci bölümün sonu.

Makalenin devamı için tklynz:
- Geçmişten Günümüze Bilgisayar - II (mizah)



Yazarımıza ait diğer makaleler

1. Javascript ve HTML ile grafik çizmek
SVG ile grafik çizmek HTML ve Javascript kasmaktan daha mantıklı elbet ama SVG yaygınlaşana kadar bir müddet daha böyle idare ediyoruz.
08 Aralık 2006 01:45

2. Veritabanı hakkında yapısal bilgiye erişmek (Database metadata)
Veritabanı hakkında yapısal bilgiye (metadata) erişim için yazılmış açık kaynak kodlu kütüphane.
18 Kasım 2006 21:51

3. Javascript ile Nesne Yönelimli Programlama (OOP with JS)
Bu makalede Javascript'le ilgili olarak JSON, function pointer ve OOP konuları ele alınıyor.
21 Ekim 2006 15:29

4. Code Generation, Code Generator nedir?
Code generation adını sıkça duyduğumuz bir kavram. Kod yazan kodların yaptığı işe deniyor. Kod da kod yazar mıymış demeyin. Programlarsanız yazıyor. Hem de ne kadar iyi programlarsanız o kadar iyi yazıyor. Hatta öyle ki; bazı code generatorlar artificial intelligence sınırlarını zorlayan kodlar bile üretebiliyor. Bu tür programları gören kimi programcıların da tüyleri diken diken oluyor, "ulan patron bunu görse beni kapının önüne koyar ha" diye.
24 Eylül 2006 07:00

5. Geçmişten Günümüze Bilgisayar - II (mizah)
Bir önceki makalemizde (bkz. Geçmişten Günümüze Bilgisayar (mizah)) kısaca bilgisayarın tarihçesinden bahsetmiş ve programlara dillerini anlatmaya başlamıştık. Bu makalemizde programlama dillerini anlatmaya devam ediyoruz.
01 Haziran 2006 18:27

6. Bir PHP Hikayesi - Bölüm VI - Biraz da Javascript hikayesi
Erol PHP ortamlarından Javascript ortamlarına akıyor.
26 Şubat 2006 01:42

7. SPAM ile mücadele
Bir spamci ile aramda geçen mesajlaşmayı yayınlamak istedim. İbreti alem olsun diye.. :)
04 Şubat 2006 12:00

8. Multithreading - Bölüm I
Threading serimizin bu ilk bölümünde konuya kısa bir giriş yapıyoruz.
11 Ekim 2005 01:38

9. Bir PHP Hikayesi - Bölüm V : PHP mi? Ne PHPsi?
Bir Pazar günü Erol'un başından geçenler. Tarumar'ın katkılarıyla.
04 Eylül 2005 14:59

10. Bir PHP hikayesi - Bölüm IV : Web Formları
Bu bölümde Sinan'la Erol'u biraz daha yakından tanıyoruz.. Ha, bir de şu web formlarından bahsediyoruz.
27 Ağustos 2005 17:00

11. Bir PHP hikayesi - Bölüm III : PHP dili
Bu bölümde Erol PHP dili ile biraz daha tanışıyor, Sinan'ın rehberliğinde yeni dünyalara yelken açmanın tadını çıkartıyor.
21 Ağustos 2005 19:29

12. Bir PHP hikayesi - Bölüm II : PHP'ye giriş
Bu bölümde PHP'ye nefes kesen bir giriş yapılıyor. Sinan heyecanla anlatıyor, Erol'un bilginin sınırlarında şakakları zonkluyor.
21 Ağustos 2005 02:36

13. Bir PHP hikayesi - Bölüm I : Kurulum
PHP öğrenmek isteyen bir programcı ve PHP bilen bir başka programcının diyalogları. Çok sürükleyici! :)
20 Ağustos 2005 18:33

14. OOP - Nesne Yönelimli Programlama - Bölüm III
Bu makalemizde inheritance (kalıtım) konusuna değineceğiz.
29 Temmuz 2005 00:59

15. OOP - Nesne Yönelimli Programlama - Bölüm II
Bu makalemizde encapsulation (kapsülleme) kavramından bahsediyoruz.
19 Temmuz 2005 10:24

16. OOP - Nesne Yönelimli Programlama - Bölüm I
Artık ister istemez her programcının bulaştığı bu teknik hakkında sayısız makale yazılmıştır bu güne kadar. Bu makale de onlardan biri.
30 Haziran 2005 22:58

17. DHTML ile sayfa refresh olmadan dinamik olarak değişen veri göstermek
Veritabanı uygulamaları geliştirmek için belkide en güzel yöntem olan webin küçük bir sorunu var: Sürekli refresh olan sayfalar..
17 Haziran 2005 23:43

18. Performans Testi (CodeDOM ile)
Aynı işi gören iki farklı koddan hangisinin daha performanslı çalıştığını test etmenizi sağlayan program. İki ayrı kutuya kodlarımızı yazıp, hangisinin daha performanslı çalıştığını derlemeden görebil
11 Haziran 2005 23:06

19. Virtual domainlerde karşılaşılan mail probleminin Sendmail ile çözümü
Bu yazi 2001 yilinda "Türk Linuxçülerine bir ucundan biz de destek olalim" diye linux.com'dan Türkçe'ye tercüme edilmistir.
07 Haziran 2005 21:19

20. Taş Fırın Satrancı
.Net'i denemek, öğrenmek için zamanında yazılmış bir program ve o zamanlar kendisi hakkında yazılmış bir makale.
06 Haziran 2005 21:25

21. Yüklü Parçacıklar Simulasyonu
Bir simulasyon programı. Bu programı parçacık sistemlerinin birbirleriyle etkileşimini incelemek için kullanabilirsiniz.
(Not: Bu program ve makale 2002 yılında yazılmıştır.)
06 Haziran 2005 20:07

Yorumlar

1.  Bilgisayarın ilk yıllarında Bilişim Kulübü'nü merak edenler http://img328.imageshack.us/img328/8646/kulpom6.jpg adresine girerek meraklarını giderebilirler.*
jpc
16 Ağustos 2006 19:51
Bu konuda bildiklerinizi bizlerle paylaşabilirsiniz
Tabi bunun için yazarsanız giriş yapmalı, yazar değilseniz yazar olmalısınız.


Bu başlığa bkz veren girişlerin başlıkları nedir?

Bu başlığa bkz veren girişler başka hangi başlıklara bkz verdiler?
© 2005, Bilişim Kulübü. (1203 ms)
Dost siteler: Nasıl, Çınar Framework