İçeriğe atla

Dallanma

Dallanma bir bilgisayar programında denetim akışının değiştiği noktadır. Dallanma terimi genellikle makine kodu ya da çevirici dil programlarındaki atlama komutları için kullanılır. Üst düzey dillerde dallanma noktaları genellikle "if-else", "while", "for" gibi döngü yapılarında ya da işlevlerin çağrılması durumunda ortaya çıkan koşul önermelerinde kullanılır. Üst düzey dillerdeki bu tür kod parçaları derlendiğinde alt düzeyde dallanma buyruklarına dönüşür.

Dallanmaya neden olan dallanma buyrukları atlayan ve atlamayan olmak üzere ikiye ayrılır. Atlamayan dallanmalar program denetimine etki etmez ve bellekteki bir sonraki buyruğa geçer. Atlayan dallanmalar ise program sayacını yeni bir bellek konumunu gösterecek biçimde değiştirir. Dallanma buyrukları koşullu (bir koşula bağlı) ve koşulsuz olmak üzere ikiye ayrılır. Herhangi bir koşula bağlı olmayan dallanma buyrukları her zaman atlar.

Günümüzde bilgisayar programlarını çalıştıran genel amaçlı işlemcilerin çoğu dallanma öngörüsü kullanarak dallanmaların davranışlarını tahmin eder.

İlgili Araştırma Makaleleri

<span class="mw-page-title-main">Programlama dili</span>

Programlama dili, yazılımcının bir algoritmayı ifade etmek amacıyla, bir bilgisayara ne yapmasını istediğini anlatmasının tektipleştirilmiş yoludur. Programlama dilleri, yazılımcının bilgisayara hangi veri üzerinde işlem yapacağını, verinin nasıl depolanıp iletileceğini, hangi koşullarda hangi işlemlerin yapılacağını tam olarak anlatmasını sağlar.

Komut kümesi mimarisi, CPU'nun yazılım tarafından nasıl kontrol edileceğini tanımlayan bilgisayar soyut modelinin bir parçasıdır. ISA, işlemcinin ne yapabileceğini ve bunu nasıl yapacağını belirterek donanım ve yazılım arasında bir arayüz gibi davranır.

<span class="mw-page-title-main">Derleyici</span> kaynak kodunu bilgisayarın işleyebileceği koda dönüştüren program

Derleyici, kaynak kodu makine koduna dönüştüren yazılımdır. Bir programlama dilinin derleyicisi, o programlama dili kullanılarak yazılmış olan kodu hedef işlemci mimarisine göre uygun şekilde makine koduna derler ve genellikle çıktı olarak yürütülebilir dosyanın oluşturulmasını sağlar. Bu eyleme derleme denir. Bir başka ifadeyle derleyici, bir tür yazı işleyicidir; girdi olarak yazı alır ve çıktı olarak yazı verir.

<span class="mw-page-title-main">Yazılım</span> bilgisayarın somut olmayan çalıştırılabilir bileşeni

Yazılım, değişik ve çeşitli görevler yapma amaçlı tasarlanmış elektronik aygıtların birbirleriyle haberleşebilmesini ve uyumunu sağlayarak görevlerini ya da kullanılabilirliklerini geliştirmeye yarayan makine komutlarıdır.

<span class="mw-page-title-main">Mikrodenetleyici</span>

Mikrodenetleyici bir VLSI entegre devre çipinde küçük bir bilgisayar'dır. Mikrodenetleyici, bellek ve programlanabilir giriş/çıkış çevre birimleri ile birlikte bir veya daha fazla CPU kapsar.

Mikroprogramlama, kontrol işaretlerini oluşturan ikili sayıların mikrokomutlar yazılarak oluşturulmasıdır. Bu sembolik mikroprogram, ikili kontrol işaretlerine mikroassembler anlamında dönüştürülür. Mikroprogramlama yazılım ile donanım arasındaki özyinelemeyi sağlayan bilgisayarın en gerekli parçasıdır. İşlemcinin denetim birimini tasarlamak için yazmaç aktarımı işlemleri düzeyinde programlama yapılması yöntemidir. Birçok işlemcide mikroprogramlama makine kodu buyruklarını doğrudan donanım üzerinde yürütür. Fakat bazı yeni mimarilerde mikroprogramlama uygulanmaz onun yerine yazılım, dijital mantık düzeyindeki işlemleri doğrudan çalıştırır.

Bellek bilgisayarı oluşturan 3 ana bileşenden biridir.. İşlemcinin çalıştırdığı programı, lar ve programa ait bilgiler bellek üzerinde saklanır. Bellek geçici bir depolama alanıdır. Bellek üzerindeki bilgiler güç kesildiği anda kaybolurlar. Bu nedenle bilgisayarlarda programları daha uzun süreli ve kalıcı olarak saklamak için farklı birimler mevcuttur.

Yama, bilgisayar programlarında oluşan bir hatayı ya da programın içeriğindeki hatalı bir fonksiyonu düzelten bir programcıktır. Genelde bilgisayarlardaki en büyük güvenlik sorunlarından olan yazılım açıklarına müdahale amacıyla kullanılır.

İşlemci önbelleği, CPU'nun hafızadaki verilere ulaşma süresini azaltan bir donanımdır. Ana belleğe(RAM) kıyasla küçük, hızlı ve işlemci çekirdeğine yakındır. Sık kullanılan veriler ya da en güncel veriler işlemci önbelleğinde saklanır. Günümüzde pek çok CPU, birden çok seviyede önbellek içerir, bu önbellekler verilerin yanı sıra komutları da bünyesinde tutar.

Veri yapısı, bilgisayar ortamında verilerin etkin olarak saklanması ve işlenmesi için kullanılan yapı.

Boru hattı yöntemi bilgisayar mimarisi ve diğer sayısal ürünlerin tasarımında başarımı artırmak için uygulanan bir yöntemdir. Komutları, boru hattı yöntemi ile işleyip daha kısa süre içinde bitmesini sağlar. Asıl amacı saat sıklığını artırarak başarımı artırmaktır. Farklı kaynakları aynı anda, farklı işler tarafından kullanarak çalışır.

<span class="mw-page-title-main">Bilgisayar mimarisi</span>

Bilgisayar mimarisi, en küçüğe ve en başarılıya ulaşmayı hedeflerken aynı zamanda maliyeti de göz önünde bulundurduğu için sanat ve bilimin ortak buluştuğu nokta olarak da tanımlanır. Bilgisayar Mimarisi, bilgisayar parçalarının iç yapıları ve aralarındaki haberleşme bağlantıları ile ilgilidir.

Dallanma Öngörüsü, bilgisayar mimarisinde çalıştırılacak programın buyruk kümesi içindeki dallanma buyruklarına gelindiğinde koşula göre atlanacağını ya da atlanmayacağını önceden varsayarak veya geçmişine bakıp tahmin ederek öngörüde bulunma işidir. Bugünkü işlemcilerin tasarımında boru hattı (bilgisayar) yöntemi kullanıldığı ve başarım hedeflerinin yüksek olduğu düşünüldüğünde bir dallanmada hangi yöne gidileceğini yüksek doğrulukta tahmin etmek kaçınılmaz olmuştur. Bu öngörü işlemciye dallanmanın sonucunu beklemeden diğer buyrukları işleme imkânı verir. Bu da zamandan kazanç anlamına gelir ki başarımı yükseltir. Bu arada da işlemcinin şimdiki buyruğun işlenmesi bitmeden sonraki buyruğun adresini bilmesi gerekir.

<span class="mw-page-title-main">Merkezî işlem birimi tasarımı</span>

Merkezî işlem birimi tasarımı bilgisayarın temel bileşenlerinden birisi olan Merkezî işlem birimini (MİB) etkin kullanmayı yönelik bir tasarımdır. MİB bilgisayar donanımının temel bileşenlerinden birisidir. İşlemcisi olmayan bir bilgisayar düşünülemez. Bu yüzden işlemcinin tasarımı ne kadar iyi olursa sistem de o derece hızlı olacaktır. İşlemciyi hızlandırmanın değişik yolları vardır. Bunlardan bazıları:

  1. Buyrukların paralel çalışmasını sağlamak
  2. Çok vuruşluk işlemciler kullanmak
  3. Boru hattı kullanmak
  4. Çoklu işleme kullanmak

Sanal bellek, fiziksel belleğin görünürdeki miktarını arttırarak uygulama programına (izlence) fiziksel belleğin boyutundan bağımsız ve sürekli bellek alanı sağlayan bilgisayar tekniğidir. Ana belleğin, diskin (ikincil saklama) önbelleği (cache) gibi davranmasıyla; yani disk yüzeyini belleğin bir uzantısıymış gibi kullanmasıyla gerçekleştirilir. Ancak gerçekte, yalnızca o anda ihtiyaç duyulan veri tekerden ana belleğe aktarılıyor olabilir. Günümüzde genel amaçlı bilgisayarların işletim sistemleri çoklu ortam uygulamaları, kelime işlemcileri, tablolama uygulamaları gibi sıradan uygulamalar için sanal bellek yöntemi kullanılmaktadır.

<span class="mw-page-title-main">Dallanma hedef belleği</span>

Bilgisayar mimarisinde, Dallanma Hedef Belleği dallanma buyruğu buyruk belleğinden alınmadan önce hem dallanmanın adresini hem de dallanma öngörüsü nü birlikte veren saklama birimidir. Dallanma buyrukları işlenirken eğer adres bilinmezse, boru hattı işlemciyi adres hesaplanana ve buyruk çekilene kadar meşgul edecektir. Bu durum için ayrı bir küçük bellek kullanmak faydalı olacaktır.

Sırasız yürütüm ya da Düzensiz yürütme, bilgisayar mühendisliğinde, günümüz yüksek performanslı işlemcilerinde kullanılan, yüksek gecikmeler sebebiyle harcanan işlemci döngülerini kullanıma sunan bir talimat yürütme yaklaşımıdır.

Giriş/çıkış, bilgi işlem sistemin değişik fonksiyonel birimleri arasındaki iletişimi veya bu arayüzlere doğrudan bilgi sinyallerini göndermeyi sağlar.

Bilgisayar mimarisinde, buyruk ön yüklemesi bekleme durumlarını azaltarak bir programın mikroişlemcide ki yürütmesinin hızlanmasını sağlayan bir tekniktir.

NetBurst, İntel'in 2000 yılında piyasaya sürdüğü Pentium 4 işlemci markasının mikromimarisine verilen isimdir. 2006 Temmuz'unda Core mikromimarisinin çıkışına kadar İntel işlemcilerin mikromimarisi olmuştur. Selefi P6 mikromimarisine göre en önemli özelliği derin boru hattı yapılanmasıyla avantaj sağladığı yüksek saat sıklığıdır. Temel olarak dört ana parçadan oluşmaktadır: Sıralı(ing. In-order) Ön-Uç(ing. Front-end), Sırasız(ing. out-of-order) yürütme birimi, Tam sayı ve kayan nokta yürütme birimleri ve bellek altdizgesi.