PC Programlama Dilleri/Programlamaya Giriş/Hafızayı Kullanma
< PC Programlama Dilleri | Programlamaya Giriş
Hafıza alanlarını kullanmadan önce işleme mekanizmasını biraz daha inceleyelim, Aşağıda bir hafıza alanı görülmektedir, Her byte verinin 0 ile 15 arasında bir numarası vardır,bu numaralara adres denir,toplam 16 byte olduğu için bu hafıza 16 Byte' lık bir kapasiteye sahiptir.
Bir byte 0 ile 255 arasında değerler alabildiğine göre,aşağıdaki hafıza alanına 16 adet, 0 ile 255 arasında rakam saklayabiliriz.
Bilgisayarlar'da Ram kapasiteleri 512Mb veya 1 Gb gibi terimler ile ifade edilir, bunlar byte alanın kısaltılmış ifadeleridir. 1024 Byte'lık bir alana 1Kb(KiloBayt) , 1024Kb'lık bir alana 1Mb(MegaBayt) ve 1024 Mb' lık alanada 1Gb 'denir.
Şimdi 3 satırlık basit bir program algoritması inceleyelim.*
1. Adres(0) = 1
2. Adres(1) = 2
3. Adres(2) = Adres(0) + Adres(1)
Bu program 0.Adres alanına [1], 1.Adres alanına [2] ve 3.Adres alanına Adres0 ile Adres1 deki değerlerin toplamı olan 3 değerini yerleştirecek ve hafıza üsteki tabloda görüldüğü gibi olacaktır. Fakat böyle bir program yazmak için hangi adreslerin boş olduğunu bilmemiz gerekmektedir, aynı anda bir çok programın çalıştığını düşünürsek bu adres başka bir program tarafından kullanılmakta olabilir. Bunu engellemek için programlama dillerinde değişkenler kullanılır, aynı programı değişken kullanarak yazalım.
TANIM
A = 1 BYTE
B = 1 BYTE
C = 1 BYTE
PROGRAM
A = 1
B = 2
C = A + B
Tanımlama yapmamızın sebebi derleyicinin verdiğimiz değişkeni tanıması ve bellekte ihtiyacı olacak kadar yer ayırmasıdır, Boyle bir programda adreslemeyi programlama dili kendisi gerçekleştirir, Aynı programı Pascal dilini kullanarak şöyle yazabiliriz.
Var
A,B,C : Byte;
Begin
A := 1;
B := 2;
C := A + B;
End;
Yazım şekli değişmiş olsa bile programlama dillerinin genel amacı kendi komutları ile bir algoritmayı çalıştırmaktır,Önemli olan algoritmayı kurabilmek ve ihtiyacları belirlemektir.
Bir byte 0..255 arası rakamları tanımlamak için yeterlidir, fakat bir çok işlem için yetersiz bir alandır, kullanmak istediğimiz rakamlar çok daha yüksek olabilir, bu gibi durumlarda daha fazla byte kullanılır.
8 bit bir alana 255, 16 bit alana 65535 , 32 bit alana 4294967295'e kadar değerler girilebilir, programlama dilleri byte sayısı ve kullanma şekillerine göre değişken tipleri sunarlar.
Pascal dilinde [Byte] 1 Byte , [Word] 2 Byte, [Integer] 4 byte' lık bir alan tanımlamada kullanılır, bu tanımlamalar doğrudan tanımlama türleri olup, bit değerini olduğu gibi yansıtmaktadır ve sadece tam sayılar için kullanılır, Noktalı sayılarda veya eksi değeri alabilecek sayılarda, byte lar aynı miktarda kullanıldığı halde, okuma ve değerleme şekilleri farklı olur
Tek Byte'lık bir sayı, tam sayı olarak kullanılmak istenilirse 0 ile 255 arasında bir değer , eksi değerleri alacak bir sayı olarak kullanılmak istenirse -127 ile +128 arasında bir değer alabilir, sebebi ise ilk bitin - işaretcisi olarak kullanılması ve geriye 7 bit'lik bir alan kalmasıdır.
En çok kullanılan sayı tanınlama değişkenleri şunladır.
Tanım Aralık Byte
Shorint -128..127 1
Smallint -32768..32767 2
Longint/Integer -2147483648..2147483647 4
Int64 -2^63..2^63-1 8
Byte 0..255 1
Word 0..65535 2
Longword/Cardinal 0..4294967295 4
Real48 2.9 x 10^-39 .. 1.7 x 10^38 6
Single 1.5 x 10^-45 .. 3.4 x 10^38 4
Double/Real 5.0 x 10^-324 .. 1.7 x 10^308 8
Extended 3.6 x 10^-4951 .. 1.1 x 10^4932 10
Comp -2^63+1 .. 2^63 -1 8
Currency -922337203685477.5808.. 922337203685477.5807 8