Üst not Yazının başlıkları sırayla yarı iletkenler , ikilik sayı sistemi , işlemciler , işlemcilerin programlanabilmesi , yazılım dilleri , işletim sistemleri oldu. Yazması bir saati aşkın bir süre aldı ama değdiğini düşünüyorum , iyi okumalar.
1.Yarı-iletkenler ve Türleri
Yarı-iletken maddelerin , iletken maddeler gibi dış elektronlarını kolaylıkla kaybederek serbest elektron havuzunda elektron hareketliliğine neden olmasının önündeki tek engel bunu bir etki yardımıyla sağlayabilir oluşudur. Yarı iletken üretiminde izlenilen teknikler genelde en fazla bağ yapabilme kapasitesindeki yarı metallerden , (örneğin Silisyumu alalım) etrafında 4 adet eşdeğer atomuyla yapabileceği kristal yapısında merkezde 1 bağ eksik yada fazla bağ yapan başka bir atom kullanılarak (Yani 4 adet Si kristal yapısında , merkezde Bor kullanarak 1 elektron fazlalığı yada Germanyum kullanarak 1 elektron açığı yaratmak) oluşturmaktan geçer. Eğer elektron açığı olan bir yarı-iletken kullandıysak buna -pozitif anlamında- p , elektron fazlalığı olan kullandıysak n tipi adı verilir.
2.Gerilim Uygulanınca Yarı-İletken Davranışları
Şimdi gelelim , bunlar gerilim verildiğinde nasıl tepki gösteriyorlar.
Negatif tipte bir yarı-iletken , elektron fazlalıklarını pozitif kutba doğru hareket ettirmek isteyecektir. Bu yüzden gerilimin pozitif ucuna elektron akışı sağlar. Ama buna karşın pozitif bir yarı-iletken elektron açığı olduğundan , negatif kutuptan elektronları boş orbitallerine aktararak ilerletir , pozitif kutuba doğru elektron akışı sağlanır ama boşlukta kalan elektron açığı kesimleri de negatif kutuba doğru ilerler.
P-N tipi iki yarıiletken birleştirildiğinde ve p'ye pozitif gerilim ucu , n'ye negatif gerilim ucu verildiğinde , Elektronlar n'nin girişinden durmaksızın ilerletilmeye başlayacaktır. Bu n'nin onları elektron fazlalığıyla birlikte pozitif kutba ilerletmesine yol açar. Pozitif kutup ise p'nin üzerinden gelen elektronları kendine çekmesine ve elektron açığı olan boşluklarını da n'ye yaklaştırmasına yol açar.
P-N tipi iki yarıiletken ters gerilime maruz bırakıldığında kendi kutuplarına doğru sırayla , negatif kutba p'nin elektron çekici bağları , pozitif kutba n'nin elektronları hareket eder ve ortak bölgede ne elektron ne elektron isteği olan bağlar kalır.
Yani iki farklı yarıiletken birleştirilirse , gerilime yön verici bir "diyot" elde edilir.
3.Transistörleri Oluşturmak , Elektronikteki Temel Paketleri Neden 1 ve 0 ile İletiyoruz ?
Eğer , P-N ve N-P birleştirilir P-N-P tipi bir bağlantı yaratılırsa , bu sefer + - + gerilim uygulanmadıkça iki + uç birbiriyle bitişemez , N-P-N tipi bir bağlantı yaratılırsa , bu sefer - + - gerilim uygulanmadıkça iki - uç birbiriyle bitişemez. Bu da bize gerilimi tetikleyici bir elektriksel elektrik anahtarı yani "transistör" elde ettirir.
Şimdi , bu - + - gibi tetikleme mekanizmalarını elektrikte yalnızca elektriği vererek sağlayabiliyoruz değil mi ? Bu yüzden elektriğin varlığı (1) ve yokluğu (0) tek seçeneğimizdir. Yani bizim , en minimal mekanizmamız 1 ve 0 değeri alabilir , bu yüzden elektronik ikili sayı sistemine muhtaçtır.
4.Transistör Devreleriyle Matematiksel İşlemlere Geçmek
Şimdi bir kaç transistörü birleştirerek ne yapabiliriz ?
...(N-P-N)...(N-P-N)...(Ampul)... bağlantısında P'lere vereceğimiz elektrik X ve Y olsun sırayla. Sonuçtaki Ampulün yanması için neler yapmamız gerekecek :
X 1 0 1 0
Y 0 1 1 0
A 0 0 1 0
Buradaki 1 ve 0 lar elektrik akımının varlığını temsil eden bitlerimiz. Demek ki ne çıktı , iki transistörün seri bağlanmasıyla "VE" bağlacını türettik.
Transistörlerin farklı bağlanma kombinasyonları sonuçlarında bağlaçları , işlemleri (Toplama , çıkarma , çarpma ve bölme) elde ederiz. Yani elimizde bir önceki örnekte az bitlik bir işlem mekanizması vardı , günlük hayatta kullandığımız sayılar 10'luk sisteme uygun olduğundan onların 2'likteki karşılığı kadar bite ihtiyacımız var ki bu işlemleri aynı anda yapmak için kullanabilelim. İşte işlemciler burada devreye giriyor. İşlemciler , çok küçük ve milyarlarca transistörü içeren yapılardır. Bunlar sadece işlem yapmaya yaramaz elbette , hafıza bellekleriyle birlikte yönetilebilir bir elektronik kontrol mekanizması sunar.
5.Mikroişlemcilerden Bilgisayarlara : İkili Kodlardan Assembly'e ve C gibi modern dillere geçmek
Bir mikroişlemci olduğumuzu düşünelim. Öncelikle ekran grafik birimleri dahil olmak üzere tüm parçalara hangi bitleri yollayarak onları kontrol edebileceğimizi bilmemiz gerekir , sonrasında zaten işlemcilerin kontrol edecekleri aygıtlara göre kendi içlerinde belirli işlemler yapması gerekir : Girdi aygıtlardan olan örneğin klavyeyle "EVRİM" yazarken bu harflerin ikilik kodunu sırayla algılayıp , bunları yönlendirip gerekli aygıta iletecek şekilde yönlendirmek ve sonra ekran kartının işlemcisine naklettirip, bunu ekrana yazdırtabilmesi gerekir. Elbette şuan kullandığımız İşletim Sistemlerinin altında bu hafıza alanlarını işlemcinin kullanması için iyi bir şekilde programlanmış belirli komutlar yer alır.
Bir işlemci , ikilik sayı sisteminde yapması gerekenleri anlatabilmemizi kolaylaştırmak için belirli komut setleri içerir : Assembly dili dediğimiz şey , makinenin anlayabileceği ikilik kodu temel kavramlara taşıyan bir çeviri dilidir.
10110000 01100001 = Mov al. 061h = 61 (97 ondalık) altı haneli değeri “al” adı verilen işlemci kaydedicisinin içine naklediniz.
Assembly diliyle ilerleyerek daha anlaşılır bir programlama dilinin üretilmesi , zamanın en büyük zorunluluğuydu ki bu daha anlaşılır anahtar kelimeleri uzun satır assembly kodlarıyla tanımlayarak mümkün oldu. C gibi bir dil , örneğin if - else gibi hazır koşul anahtarlarıyla , istenen bir koşulu onlarca satırlık assembly kodundan kurtarır. C gibi diller , günümüzün modern bilgisayarlarının işletim sistemlerinin içindeki bir uygulamayı kodlamaktan başka , son kullanıcı için işlemciyle irtibat kurmak için pek de önemli bir araç değildir artık.