Şube Masası Nedir?

Bir dal tablosu, program kontrolünü bir programın bir bölümünden bir başkasına veya dinamik olarak yüklenen bir ikinci programa, bir talimat dalı göndererek veya bir switch ifadesi uygulayarak verimli bir şekilde aktarma yöntemidir. Bazen bir atlama tablosu olarak adlandırılan bu yöntem, bir C + derleyicisinden bir anahtar ifadesine göre bir prosedür uygulamak için bir sıçrama yapmak için bir takım koşullara veya koşullara dayanır. Branş tablolarının ana avantajlarından bazıları, kompakt kod yapıları ve program akışını belirlerken tek tek testlerin dönüş kodlarını test etme ihtiyacındaki azalmadır.

1980'lerde, dallanma tabloları assembly dili programlamasında yaygın olarak kullanıldı. Hala gömülü sistemler ve işletim sistemleri geliştirme için montaj programlamasında kullanılmaktadır. 1990'lardan bu yana, derleyici programlama dilleri de branş masası işlevini kullandı.

Şube tabloları, girdi verildiğinde diğer varış yerlerine dallanan koşulsuz talimatların bir listesini içerir. Çoğu bilgisayar donanımı bu talimatları verimli bir şekilde uygulayabilir. Zaman zaman ofset - esasen varış noktasına olan mesafe - daha sonra şube talimat setlerine işaret edebilecek veya dal talimat setlerine atlayabilen bir program sayacına eklenebilir. Şube tablosu uygulamak için gereken tek şey giriş kodunun doğrulanması, verilerin bir ofset haline dönüştürülmesi ve verilerin verilen bir talimat uzunluğuyla çarpılmasıdır.

Gömülü programlama, branş tablolarını, makine kodu veya dizilmiş işaretçiler kullanmaktan daha fazla bellek verimli olduğu için kullanır. Gömülü kontrol sistemleri hafıza tasarrufuna ihtiyaç duyar ve şube tablosuna erişim sırasında küçük bir performansa mal olsa da, herhangi bir sanal yöntem işlev çağrısı, kararlı işlevsellik için aynı performansa mal olur. Sınırlı CPU erişimi ve gömülü sistemlerdeki bellek tasarrufu, statik fonksiyon setleri için bir dal tablosuna ihtiyaç duyar.

Derleyici programlama dilleri, gerektiğinde derleyicileri optimize etmek için arama tuşlarını kullanarak kendi branş tablolarını oluşturur. Bazı programcılar, derleyiciye anahtar aramalarında iki adımlı koşullu parametreler vererek, bağlamsal şube tablosu oluşturma işlemine elle yardımcı olmayı seçer. Programların daha önceki yıllarda, şube tablosu uygulaması Fortran derleyici dillerinde "GoTo" komutlarıydı. Dal tabloları, derleyici dillerde program akışındaki değişiklikleri uygulamak veya tekrarlanan komut dizileri için bir başlangıç ​​noktası olmak için hala kullanılmaktadır.