Ders Notları ve Dökümanlar

CAS - RAS Nedir? CAS, RAS, SPD Terimlerinin Açıklaması

"CAS" ve "RAS" Latency Nedir?

CAS nedir?

CAS, "Column Address Strobe" 'nin kısaltmasıdır. DRAM hafızaları bir ızgara yahut bir matrix gibi dizayn edilmişlerdir.
(Hesap Tablosuna benzer şekilde) DRAM'ler de aynı sayılar ve formüller gibi hücreleri kullanırlar. Aynen bir hesap tablosunda olduğu gibi,
her DRAM hücresi tabloda bir satır ve sütun adresine sahiptir (B Kolonu Satır 12 veya AH Kolonu Satır 17 gibi). İşte CAS, kolonların zamanlamasını temsil eden
bir terimdir.

RAS nedir?
CAS ile beraber sıklıkla anılan bir diğer terim ise RAS sinyalidir. RAS da "Row Address Strobe" nin kısaltması olup aynen CAS da olduğu gibi
her bir saat çevriminde hücrenin bu sefer satırını referans eder.

CAS Latency (CAS Gecikmesi) nedir?
Gecikme (Latency) uyarı ve cevap (etki ve tepki) arasında geçen süreç olarak tanımlanabilir. Yani kısaca verilen görevin başından bitene kadar geçen süre gibi düşünülebilir.

CAS Gecikmesi (CAS Latency veya Column Address Strobe Latency) RAM (Random Access Memory - Rastgele Erişimli Bellek) in istenen görevi gerçekleştirmeden önce saat çevrimindeki bir gecikme sürecidir.
Bunun anlamı yüksek hızlı bellekler kullanıldığında düşük CAS gecikmesinin yüksek bellek performansı vereceğidir.
CAS2 bellekler (Yani beklenen işlemi gerçekleştirmek için 2 saat çevrimine ihtiyaç duyanlar)
CAS3 tipi belleklerden (aynı işi yapmak için 3 saat çevrimine ihtiyaç duyanlar) aslında daha hızlı çalışabilmektedir.

"CAS2" terimi aslında "CL2" ile aynı şeydir, ikisi de kullanılır.

CAS2, CAS3 den hızlı mıdır?

Bazı kullanıcılar CAS2 belleklerin, CAS3 olanlardan %33 nispetinde hızlı olduğu kanısındadırlar, ancak bu tam olarak doğru değildir.
CAS2 nin hızlı göründüğü yüksek bantgenişliğine ihtiyaç duyan yazılım ve oyunlarda ölçülebilen değer aslında %5 ila %10 arasındadır.

Cas Gecikmesi bilgisayarın performansını nasıl etkiler?

Yüksek performanslı bellekler, yüksek bellek hızları ve düşük CAS gecikmesi kombinasyonu ile mümkündür.

Bellek kontrolcüsünün belleği nasıl okuduğuna göz atacak olursak:

1.-Chipset, satır adresini belleğin adres pinine koyup RAS sinyali göndererek bellek matrixinde istediği SATIRa (ROW) erişir.
2.-Burada birkaç saat çevrimini kapsayan bir bekleme periyodu oluşur (işte bu RAS-to-CAS Delay denilen süreçtir).
3.-Aynı şekilde bu sefer kolon adresi pinlere yüklenip CAS sinyali gönderilerek istenilen kolona erişilir.
4.-Burada da bir bekleme oluşur - CAS Gecikmesi (latency) olarak bilinen olay - ve ardından veriye erişilecek duruma gelinir.
5.-İstenilen adresteki Veri okunabilecek haldedir, bir yada iki saat çevrimi süresince okunur.

Burada unutulmaması gereken anlattığım prosedürün çok temel olduğudur. İşlemci önbelleği vb gibi şeyler performansı etkiler.

SPD nedir?
SPD "Serial Presence Detect" teriminin kısaltmasıdır. Bellek modülünün üstünde bulunan eeprom entegresinden ibarettir ve BIOS'a belleğin çalışabileceği
frekans ve zamanlamaları bildirmekle görevlidir. Bir belleği overclock etmek isterseniz, öncelikle bios dan SPD erişimini kapatmanız gerekir. Böylece
belleğin spd entegresinin söylediği zamanlamaların dışına çıkabilme şansı doğar (Anakarta Bağlı olarak)

Php Dersleri- For Döngüsü

Bu haftadan itibaren php derslerine başlıyoruz biraz geç oldu ama :) olsun derslerle doğru orantılı gitmeye çalışacağım ilk konumuz for döngüsü.
Öncelikle döngü nedir ordan başlayalım ;
İstenilen işlemlerin belirtilen aralık kadar tekrarlanması yada başlangıç değerinden bitiş değerine kadar belirtilen sayılarla ilgili işlem yapmak için kullanılır diyebiliriz. Komutun kullanım şekli ;
for ( yeni bir değişken yaratılır; koşul verilir; döngünün başlaması ) {
Bu koşul doğru ise yapılacak işlere ait komutlar
}

Şimdi örneklerle for komutunu açıklayalım

1-Ekranda 1'den 10'a kadar olan sayıları yazan program:
  1. <? php for($i=1;$i<=10;$i++)
  2. // $i değişkeni tanılanarak başlangıç değeri 1 veriliyor, şart olarak 10'a eşit yada 10'dan küçük olması isteniyor, ve artış miktarı birer birer
  3. {
  4. echo $i;
  5. // $i değişkeninin değeri ekrana yazdırılıyor
  6. echo "<br>";
  7. // $i değişkeni ekrana yazdırıldıktan sonra bir satır alta inmesi sağlanıyor
  8. }
  9. ?>

2-1'den 10'a kadar olan sayıların toplamını bulan program:
  1. <?
  2. for($i=1;$i<=10;$i++)
  3. // $i değişkeni tanılanarak başlangıç değeri 1 veriliyor, şart olarak 10'a eşit yada 10'dan küçük olması isteniyor, ve artış miktarı birer birer
  4. {
  5. $toplam=$toplam+$i;
  6. // $toplam değişkeni ve $i değişkeni toplanarak sonuç tekrar $toplam değerine aktarılıyor
  7. }
  8. echo "1'den 10'a kadar olan sayıların toplamı $toplam";
  9. // Döngü bittikten sonra ekrana 1'den 10'a kadar olan sayıların toplamı 55 yazılıyor
  10. ?>

3- Ekranda aşağıdaki görüntüyü veren program
  1. <?
  2. for($i=1;$i<=8;$i++)
  3. {
  4. $a=$a."*";
  5. //$a string ifadesine * kakateri ekleniyor döngü her döndügünde bir yıldız artıyor
  6. echo $a;
  7. // $a değişkeni ekranda yazdırılıyor
  8. echo "<br>";
  9. }
  10. ?>

4-İç içe döngü kullanarak ekranda çarpım tablosunu yazan program
  1. <?
  2. for($i=1;$i<=10;$i++)
  3. {
  4. for($a=1;$a<=10;$a++)
  5. {
  6. echo "$i*$a=".$i*$a;
  7. echo "<br>";
  8. }
  9. }
  10. ?>



Evet Bu haftalık bu kadar umarım faydalı olmuştur birdahaki ders görüşmek üzere iyi dersler ;)

Php Dersleri- For Döngüsü

Bu haftadan itibaren php derslerine başlıyoruz biraz geç oldu ama :) olsun derslerle doğru orantılı gitmeye çalışacağım ilk konumuz for döngüsü.
Öncelikle döngü nedir ordan başlayalım ;
İstenilen işlemlerin belirtilen aralık kadar tekrarlanması yada başlangıç değerinden bitiş değerine kadar belirtilen sayılarla ilgili işlem yapmak için kullanılır diyebiliriz. Komutun kullanım şekli ;
for ( yeni bir değişken yaratılır; koşul verilir; döngünün başlaması ) {
Bu koşul doğru ise yapılacak işlere ait komutlar
}

Şimdi örneklerle for komutunu açıklayalım

1-Ekranda 1'den 10'a kadar olan sayıları yazan program:
  1. <? php for($i=1;$i<=10;$i++)
  2. // $i değişkeni tanılanarak başlangıç değeri 1 veriliyor, şart olarak 10'a eşit yada 10'dan küçük olması isteniyor, ve artış miktarı birer birer
  3. {
  4. echo $i;
  5. // $i değişkeninin değeri ekrana yazdırılıyor
  6. echo "<br>";
  7. // $i değişkeni ekrana yazdırıldıktan sonra bir satır alta inmesi sağlanıyor
  8. }
  9. ?>

2-1'den 10'a kadar olan sayıların toplamını bulan program:
  1. <?
  2. for($i=1;$i<=10;$i++)
  3. // $i değişkeni tanılanarak başlangıç değeri 1 veriliyor, şart olarak 10'a eşit yada 10'dan küçük olması isteniyor, ve artış miktarı birer birer
  4. {
  5. $toplam=$toplam+$i;
  6. // $toplam değişkeni ve $i değişkeni toplanarak sonuç tekrar $toplam değerine aktarılıyor
  7. }
  8. echo "1'den 10'a kadar olan sayıların toplamı $toplam";
  9. // Döngü bittikten sonra ekrana 1'den 10'a kadar olan sayıların toplamı 55 yazılıyor
  10. ?>

3- Ekranda aşağıdaki görüntüyü veren program
  1. <?
  2. for($i=1;$i<=8;$i++)
  3. {
  4. $a=$a."*";
  5. //$a string ifadesine * kakateri ekleniyor döngü her döndügünde bir yıldız artıyor
  6. echo $a;
  7. // $a değişkeni ekranda yazdırılıyor
  8. echo "<br>";
  9. }
  10. ?>

4-İç içe döngü kullanarak ekranda çarpım tablosunu yazan program
  1. <?
  2. for($i=1;$i<=10;$i++)
  3. {
  4. for($a=1;$a<=10;$a++)
  5. {
  6. echo "$i*$a=".$i*$a;
  7. echo "<br>";
  8. }
  9. }
  10. ?>



Evet Bu haftalık bu kadar umarım faydalı olmuştur birdahaki ders görüşmek üzere iyi dersler ;)

PHPnin (muhtemelen) az bilinen 10 özelliği

Bir programlama dilinden beklentileriniz nedir? Size, işlemlerinizi yapabilmeniz için gereken esnekliği sağlayabilmesidir en başta. Yetenekli olmasıdır.

php-ozellikler.jpg

Bu yazımızda da PHP’nin (muhtemelen) az bilinen 10 özelliğine beraberce göz atacağız.

#1: Veri türleri arasında çevrim

PHP’de değişken oluşturduğunuzda, oluşturduğunuz bu değişkenin veri türünü belirtmenize gerek yoktur, $x dersiniz ve değişkeninizi yaratmış olursunuz.

Ancak uygulamanızın ilerleyen safhalarında $x değişkeninin taşıdığı değerin “integer” olduğundan emin olmanız gerekirse ne yaparsınız? Şu şekilde rahatlıkla $x değerini integer yapabilirsiniz:

$x = 35.75;
 
echo (int) $x; //35

#2: Değişken değişkenleri

Bir değişkenin isminin değişken olması gerekirse ne yapabilirsiniz? Tabii ki değişkenin ismini değişken olarak tanımlarsınız!

$banka = “ziraatbank”;
$banka = “bir kamu bankası”;
 
echo $ziraatbank; //bir kamu bankası

Tabi bu özelliği kullanırken güvenlik açığı bırakmamak konusunda iki kez düşünmemiz gerekir!

#3: Değişken isimlerini sayılardan yapmak

PHP’de (ve diğer pek çok dilde) değişken isimlerini sayılardan oluşturamazsınız, $123 gibi. $sayi123 yapabilirsiniz ama $123sayi da yapamazsınız.

$123 yazmak konusunda bir inadınız varsa, değişken değişkenlerini kullanarak bir şeyler yapabiliriz:

$isim =123;
 
$isim = “icerik...;
 
echo ${123}; // icerik...

#4: Fonksiyonları değişkenlere göre çağırmak

Bu belki biraz kafa karıştırıcı olabilir, ama önce şu örneği bir inceleyelim:

function deneme()
{
echo “bu bir denemedir...;
}
 
$secim = “deneme”;
 
$secim(); //bu bir denemedir...

Normalde secim() isimli bir fonksiyonumuz yok, olsa bile $secim() şeklinde çağrılmaz. Ama burada çağrılacak fonksiyonun ismi, $secim değişkeninde tutulmakta ve onun taşıdığı değere göre ilgili fonksiyon çağrılmakta.

Bu özelliği de kullanırken güvenlik konularını yine iki kez düşünmemiz gerekir.

#5: Sabitler

Değişkenler olduğu gibi sabitler de bulunmaktadır ve kullanımları da yine çok basittir:

define(“YAZAR”, “isa engiz”);
 
echo YAZAR; //isa engiz

Sabitlerin avantajı, uygulamanın ilerleyen bölümlerinde de değiştirilemezler ve kullanırken $ işareti gerektirmezler. Büyük harfler yazılmalarına gerek yoktur ancak sabit olduklarını belrtmek için büyük harf kullanılır.

#6: İkinin katları ile çarpmak ve bölmek

Eğer değişkeninizi ikinin katları ile çarpmak veya bölmek istiyorsanız, bunun için (bana göre) ilginç bir yol bulunmakta:

$sayi = 5;
 
echo $sayi << 3; // 5*2^3
 
echo $sayi << 6; // 5*2^6
 
echo $sayi >> 1; // 5/2^1
 
echo $sayi >> 7; // 5/2^7

#7: Değişken değerlerini referans ile atamak ve değiştirmek

Önce aşağıdaki örneği inceleyelim:

$x = 10;
 
$y = &$x;
 
$y = 20;
 
echo $x; //20

Yaptığımız şey aslında $y değişkeninin içeriğine, referans ile $x değişkeninin adresini atadık ve biz $y değişkenine bir değer vermek istediğimizde bu değer $x değişkenine atanmış oldu.

#8: XOR, yani Exclusive OR

Bir if deyimi içerisinde “or” kullanırken düşünülen mantık: “bu iki değerden biri doğruysa… istenileni yap…” İkisi birden doğruysa yine istenilen işlemi yapar. XOR’un kullanımı işte burada devreye giriyor, “iki değerden yalnızca biri doğruysa… istenileni yap…” Kullanım şekli şuna benzer olacak:

if ($a == 10 XOR $b == 10)
{
...
...
}

$a veya $b den biri 10 olduğunda işlem gerçekleşecek, ama ikisi birden 10 olursa if deyiminin içerisine girmeyecek…

#9: Pratik if-else kullanımı

İf – Else kod blokları uzun olabilir, yazmak zor gelebilir, o zaman şöyle bir özellik kullanabilirsiniz:

$x = 10;
 
echo $x == 10 ? “doğru”: “yanlış”;
 
//yani...
 
if ($x == 10)
{
echodoğru”;
}
else
{
echo “yanlış”;
}

okunabilirlik açısından normal yazım şekli daha iyi gözüküyor ancak ilki kesinlikle daha pratik.

#10: Fonksiyonlara referans ile değer göndermek

Genelde fonksiyonlar size bir değer geri döndürürler ve kendisine gönderdiğiniz değişkenlere “zarar vermezler”, yani onların değerleri değiştirmezler.

Ama biz bazen değişkenin değerinin değiştirilmesini isteyebiliriz, bu durumda yine değişkenin değerini referans ile göndermeliyiz:

function sayiAyarla(&$deger)
{
$deger = $deger / 10;
}
 
$sayi = 1000;
 
sayiAyarla($sayi);
 
echo $sayi // 100

Sonuç

Görüldüğü üzere PHP’nin pek sık gündeme gelmeyen özellikleri bulunmakta. Bu özellikleri kullanıp kullanmamak tamamen size kalmış, aynen dizi kullanıp kullanmamak gibi… Dizileri kullanmamızın sebebi bize pratiklik sağlamasıdır, bu özellikler de aynı şekilde yerinde kullanıldığında daha “etkili” kod yazmamızı sağlayacaktır.

PHPnin (muhtemelen) az bilinen 10 özelliği

Bir programlama dilinden beklentileriniz nedir? Size, işlemlerinizi yapabilmeniz için gereken esnekliği sağlayabilmesidir en başta. Yetenekli olmasıdır.

php-ozellikler.jpg

Bu yazımızda da PHP’nin (muhtemelen) az bilinen 10 özelliğine beraberce göz atacağız.

#1: Veri türleri arasında çevrim

PHP’de değişken oluşturduğunuzda, oluşturduğunuz bu değişkenin veri türünü belirtmenize gerek yoktur, $x dersiniz ve değişkeninizi yaratmış olursunuz.

Ancak uygulamanızın ilerleyen safhalarında $x değişkeninin taşıdığı değerin “integer” olduğundan emin olmanız gerekirse ne yaparsınız? Şu şekilde rahatlıkla $x değerini integer yapabilirsiniz:

$x = 35.75;
 
echo (int) $x; //35

#2: Değişken değişkenleri

Bir değişkenin isminin değişken olması gerekirse ne yapabilirsiniz? Tabii ki değişkenin ismini değişken olarak tanımlarsınız!

$banka = “ziraatbank”;
$banka = “bir kamu bankası”;
 
echo $ziraatbank; //bir kamu bankası

Tabi bu özelliği kullanırken güvenlik açığı bırakmamak konusunda iki kez düşünmemiz gerekir!

#3: Değişken isimlerini sayılardan yapmak

PHP’de (ve diğer pek çok dilde) değişken isimlerini sayılardan oluşturamazsınız, $123 gibi. $sayi123 yapabilirsiniz ama $123sayi da yapamazsınız.

$123 yazmak konusunda bir inadınız varsa, değişken değişkenlerini kullanarak bir şeyler yapabiliriz:

$isim =123;
 
$isim = “icerik...;
 
echo ${123}; // icerik...

#4: Fonksiyonları değişkenlere göre çağırmak

Bu belki biraz kafa karıştırıcı olabilir, ama önce şu örneği bir inceleyelim:

function deneme()
{
echo “bu bir denemedir...;
}
 
$secim = “deneme”;
 
$secim(); //bu bir denemedir...

Normalde secim() isimli bir fonksiyonumuz yok, olsa bile $secim() şeklinde çağrılmaz. Ama burada çağrılacak fonksiyonun ismi, $secim değişkeninde tutulmakta ve onun taşıdığı değere göre ilgili fonksiyon çağrılmakta.

Bu özelliği de kullanırken güvenlik konularını yine iki kez düşünmemiz gerekir.

#5: Sabitler

Değişkenler olduğu gibi sabitler de bulunmaktadır ve kullanımları da yine çok basittir:

define(“YAZAR”, “isa engiz”);
 
echo YAZAR; //isa engiz

Sabitlerin avantajı, uygulamanın ilerleyen bölümlerinde de değiştirilemezler ve kullanırken $ işareti gerektirmezler. Büyük harfler yazılmalarına gerek yoktur ancak sabit olduklarını belrtmek için büyük harf kullanılır.

#6: İkinin katları ile çarpmak ve bölmek

Eğer değişkeninizi ikinin katları ile çarpmak veya bölmek istiyorsanız, bunun için (bana göre) ilginç bir yol bulunmakta:

$sayi = 5;
 
echo $sayi << 3; // 5*2^3
 
echo $sayi << 6; // 5*2^6
 
echo $sayi >> 1; // 5/2^1
 
echo $sayi >> 7; // 5/2^7

#7: Değişken değerlerini referans ile atamak ve değiştirmek

Önce aşağıdaki örneği inceleyelim:

$x = 10;
 
$y = &$x;
 
$y = 20;
 
echo $x; //20

Yaptığımız şey aslında $y değişkeninin içeriğine, referans ile $x değişkeninin adresini atadık ve biz $y değişkenine bir değer vermek istediğimizde bu değer $x değişkenine atanmış oldu.

#8: XOR, yani Exclusive OR

Bir if deyimi içerisinde “or” kullanırken düşünülen mantık: “bu iki değerden biri doğruysa… istenileni yap…” İkisi birden doğruysa yine istenilen işlemi yapar. XOR’un kullanımı işte burada devreye giriyor, “iki değerden yalnızca biri doğruysa… istenileni yap…” Kullanım şekli şuna benzer olacak:

if ($a == 10 XOR $b == 10)
{
...
...
}

$a veya $b den biri 10 olduğunda işlem gerçekleşecek, ama ikisi birden 10 olursa if deyiminin içerisine girmeyecek…

#9: Pratik if-else kullanımı

İf – Else kod blokları uzun olabilir, yazmak zor gelebilir, o zaman şöyle bir özellik kullanabilirsiniz:

$x = 10;
 
echo $x == 10 ? “doğru”: “yanlış”;
 
//yani...
 
if ($x == 10)
{
echodoğru”;
}
else
{
echo “yanlış”;
}

okunabilirlik açısından normal yazım şekli daha iyi gözüküyor ancak ilki kesinlikle daha pratik.

#10: Fonksiyonlara referans ile değer göndermek

Genelde fonksiyonlar size bir değer geri döndürürler ve kendisine gönderdiğiniz değişkenlere “zarar vermezler”, yani onların değerleri değiştirmezler.

Ama biz bazen değişkenin değerinin değiştirilmesini isteyebiliriz, bu durumda yine değişkenin değerini referans ile göndermeliyiz:

function sayiAyarla(&$deger)
{
$deger = $deger / 10;
}
 
$sayi = 1000;
 
sayiAyarla($sayi);
 
echo $sayi // 100

Sonuç

Görüldüğü üzere PHP’nin pek sık gündeme gelmeyen özellikleri bulunmakta. Bu özellikleri kullanıp kullanmamak tamamen size kalmış, aynen dizi kullanıp kullanmamak gibi… Dizileri kullanmamızın sebebi bize pratiklik sağlamasıdır, bu özellikler de aynı şekilde yerinde kullanıldığında daha “etkili” kod yazmamızı sağlayacaktır.

Üye Giriş

Üyeler

3611 Kayıtlı
0 Bugün
3611 Dün
6 Bu Hafta
20 Bu Ay
Son
ismail2626 offline