Programı oluşturmanın son adımıprogramlama dillerinden birinde (C / C ++, Pascal vb.) yazılan bir algoritmanın düşük seviyeli makine diline çevrilmesi. Bunun nedeni, bilgisayarların ikili göreve yakın olan ve bir görevi yerine getirmek için ilkel veri yapılarıyla (bit, bayt veya sözcük) çalışan bir dilde komutlar vermesi gerektiğidir. Yüksek seviyeli dillerin probleme yönelik operatörlerini ikili koda çevirme sürecine çeviri denir. İki çeviri yöntemi vardır - derleme ve yorumlama.
Derleyici - nedir bu?
“Derleyici” ve “derleme” terimlerinin birçok yorumunun analizi, aşağıdaki tanımı belirlememizi sağlar. derleyici Bir çeviri programıdırorijinal algoritmanın üst düzey bir dilden, makine yönelimli bir dilde eşdeğer bir talimatlar dizisine dönüştürülmesi. Sonuçta elde edilen nesne kodunun kullanıma hazır bir program modülüne sonraki montajı için bu nesne kodu olarak adlandırılır.
Derleyici ve yorumlayıcı - benzerlikler ve farklılıklar
yorumlayıcı Bir derleyici gibi bir yardımcı programdır,kaynak kodunu makine koduna çevirmek için tasarlanmıştır. Ancak, derleyiciden farklı olarak, tercüman programla birlikte her seferinde başlatılır ve çeviriyi satır satır gerçekleştirir.
Derleyici ve yorumlayıcının, bilgisayarın programcı tarafından verilen komutları tanımasına ve yürütmesine izin veren dil işlemcileri olduğunu söyleyebiliriz.
Derleyici Sınıflandırması
Derleyiciler temel olarak pratik uygulama alanlarıyla ilgili özelliklere göre sınıflandırılır.
Derleyici Vectorizing Kaynak kodunu nesne koduna çeviren ve vektör işlemcili bilgisayarlar için uyarlanan bir yardımcı programdır.
Esnek derleyici modüler bir tarzda üst düzey bir dilde programlanmıştır. Yönetimi tablolar kullanılarak gerçekleştirilir. Derleyici derleyicisini kullanarak yürütmek de mümkündür.
Artımlı derleyici - Bu, kaynak kodun ayrı ayrı parçalarını ve bunlara eklenenleri yeniden çeviren bir dil işlemcisidir. Ancak, tüm uygulamanın yeniden derlenmesini ortadan kaldırır.
Yorumlama (adım adım) derleyici Kaynak üst düzey koddan her ifadeyi veya komutu sırayla bağımsız olarak derleyen bir yardımcı programdır.
Derleyici derleyicisi - bir programlama dili için resmi bir tanım algılayabilen ve bağımsız olarak herhangi bir dil için bir derleyici oluşturabilen bir çevirmen.
Hata ayıklayıcı derleyicisi kaynak kodu yazarken yapılan bazı sözdizimi hatalarını bulmanızı ve ortadan kaldırmanızı sağlar
Yerleşik derleyici RAM'de kalıcı bir yer kaplar ve bu nedenle çok çeşitli görevler tarafından yeniden kullanılabilir.
Kendi kendini derleyen derleyici Yayının yapıldığı dilde yazılır.
Evrensel derleyici giriş dilinin semantik ve sözdizimsel parametrelerinin resmi bir açıklamasına dayanmaktadır. Böyle bir yardımcı programın ana bileşenleri çekirdek, sözdizimsel ve anlamsal yükleyicilerdir.
Derleyici cihaz
Herhangi bir derleyici bir çevirmene dayanır veBağlayıcı. Genellikle, derleme sırasında harici bir bağlayıcı kullanılır ve derleyicinin kendisi sadece çeviri işlevini yerine getirir. Ayrıca, derleyicinin çevirmenle (veya kaynak kodunu yazarken farklı programlama dilleri kullanılmışsa çevirmenlerle) ve bağlayıcıyla ilişkilendirilmiş ve gerekirse bunları başlatan bir tür yönetici programı olarak uygulandığı da olur.
Programlama Dilleri ve Çeviri Yöntemleri
Program yazılı olmasına rağmenHerhangi bir programlama dili, derleyebilir veya yorumlayabilirsiniz, birçok üst düzey dil belirli bir çeviri yöntemine yatkındır. Bu nedenle, C dili başlangıçta derleme için ve Java - yazılı bir programın yorumu için tasarlanmıştır. C derleyicileri, nispeten düşük seviyesi ve az sayıda yapısal elemanı nedeniyle oldukça kolay bir şekilde geliştirilir.
Derleyici ve çevirmenlerin avantaj ve dezavantajları. Uygulama alanları
Derlenmiş uygulamalarınyorumlanmasına kıyasla yüksek hız, ancak aynı zamanda derleme sonucu elde edilen makine kodu donanım platformuna bağlıdır. Bu nedenle, Windows için yazılmış ve derlenmiş bir program, örneğin Linux'ta çalışmaz. Bu nedenle, İnternet uygulamaları söz konusu olduğunda, hangi ortamda çalışacaklarını önceden söylemek mümkün olmadığında, yorumlama veya bayt kodu kullanırlar (bu durumda, orijinal program çeşitli donanım platformlarında çalıştırılabilen bir ara forma dönüştürülür).