Merhaba Dünya!

Tarihteki ilk kod nasıl yazıldı. Bildiğimiz anlamda kodlamanın babası kim?

Merhaba Dünya!

Kodlama denilince herkesin aklına matrix ekranları kayan yazılar ve asosyal programcılar geliyor olabilir ama kodlama insanlık kadar eski! Dumanla iletişimin de bir kod içerdiğini varsayabiliriz, düşünebilen insan varlığından itibaren sürekli bir şeyleri kodlamış bu kodlara anlamlar yüklemiş ve buna göre hayatını şekillendirmiştir. Bu kodlama mantığı insanı hiçbir zaman terk etmemiş yıllar içerisinde artan hesap ihtiyacı ile Babiller zamanında ilk abaküs icat edilmiştir. Milattan önce 1000 yıllarına dayanan bu teknoloji zaman içerisinde çeşitli alternatiflerin denenmesiyle değişiklikler göstermiştir. Bilinen ilk mekanik hesap makinesi M.S 1500 yılında Leonardo Da Vinci tarafından tasarlanmıştır. 1600 lü yılların ortalarına kadar bu teknolojinin gelişmesi sürmüş ve logaritmik işlemler, çoklu hesaplamalar gibi işlemlerin makineler aracılığıyla yapılması sağlanmıştır. Bu süreçten sonra elektronik cihazların da hayata dahil olmasıyla bugün bilgisayarların anadili olan 0 - 1 çiftli kodlama sistemi de kendini göstermiştir.

İlk kod nasıl yazıldı sorusu aynı zamanda ilk derleyici nasıl programlandı sorusudur. Bunu anlamak için önce 1(elektrik var) ve 0(elektrik yok) kavramlarının derleyici için ne anlama geldiğini anlamalıyız. İlk derleyiciler üzerinde çalışacağı işlemcinin spesifikasyonuna göre tek tek elle yazılan 1-0 kodlarıyla programlanmıştır. bu oldukça zahmetli ve zor bir süreç. Bu 1-0 kodları fiziksel bir durumun karşılığıdır ve buna düşük seviye programlama dili diyebiliriz. Bu fiziksel programlamayı müzik kutusu mekanizmasında da görebiliriz. Müzik kutusu bir silindir üzerine yerleştirilmiş belli çentiklerle programlanır. 

1 ve 0 ile çalışıyor hepsi tabii ki fakat makina bu 1 ve 0 ı nasıl anlıyor? 64 bitlik bilgisayarda 2 üzeri 64 kadarlık bir komut imkanınız vardır ki neredeyse her şeyi yapmaya yeten bir olasılık. DNA'da 4 adet bazın yan yana farklı dizilimleriyle hücreye nasıl davranacağını komut ediyor. Mantık aynı. Verilen komutlar dışında gerçekleşen olayların çok hızlı ve kompleks olmaları bizim gibi sıradan insanların kafasını karıştırsa da inatla üzerine varırsanız. aynı insanın evrimi gibi bilgisayarların da zamanla hazır olanın üstüne bir şey daha koyarak gününüzdeki halini aldığını görebilirsiniz. 

1 ve 0 lardan oluşan programlama diline düşük seviye dersek, assembly diline orta ve günümüzde kullanılan java, python, c++ gibi dillere de yüksek seviye programlama dilleri diyebiliriz. Yüksek seviye dilde yazdığınız assembly diline çevrilir. Assembly dilinden de makine diline çevrilir. Aslında tek satır yazdığınız kod arka planda çok işleme maruz kalır.

 

Örneğin:
c = 4 + 5; => Basit bir kod satırı toplama yapıyor.
Assemnly dilinde
MOV AL,F5
Mov BL,0B
ADD AL,BL
Ardından 0 1 şeklinde cpu işliyor.
8 bit veri = F5 Hex , binary sistemde 1111 0101
8 bit veri = 0B Hex, binary sistemde 0000 1011 karşılık gelmektedir.

Yazdığınız kod aslında fiziksel olarak bir durum belirtmektedir. 1 veya 0 ile mantık yapıları kurulmaktadır. Binlerce adreste bilgiler saklanmakta ve işlenmektedir.

 

 

16.11.2022