Derleyiciler

C / C++ Derleyiciler

Digraph ve Trigraphs

Yazan : Şadi Evren ŞEKER Bu yazının amacı, bilgisayar programlama dillerinde kullanılan digraph ve trigraph kavramlarını açıklamaktır. Basitçe bir programlama dilinde çeşitli sebeplerden dolayı bazı karakterlerin yazılması mümkün olmadığında digraph veya trigraph ismi verilen ve arka arkaya gelen 2 veya…

Derleyiciler

LR(1) Parçalama Algoritması

Yazan : Şadi Evren ŞEKER Bu yazının amacı, LR(1) algoritmasını açıklamaktır. Algoritma, özellikle derleyici tasarımı konusunda sık kullanılan parçalama algoritmalarından birisidir. Algoritmanın ismi, iki kelimenin kısaltmasından gelmektedir. Buna göre ilk L harfi, left to right parsing (soldan sağa doğru parçalama)…

Derleyiciler

LR(0) parçalama algoritması

Yazan : Şadi Evren ŞEKER Bu yazının amacı, özellikle derleyici tasarımı konusunda geçen LR(0) parçalama algoritmasını (parsing algorithm) açıklamaktır. Algoritmanın ismi, iki harften L ve R harflerinden gelmektedir. İlk L harfi, Left to Right parsing (soldan sağa parçalamalı) anlamında, ikinci…

Derleyiciler

Earley Parçalama Algoritması (Earley Parsing Algorithm)

Yazan : Şadi Evren ŞEKER Bu yazının amacı, bilgisayar bilimlerinde özellikle derleyici tasarımı (compiler design) konusu altında geçen Earley Parçalama Algoritmasını (Earley Parsing Algorithm) açıklamaktır. Bu algoritmanın amacı, verilen bir gramer ile verilen bir girdiyi parçalayarak varsa bu girdideki hatayı…

Derleyiciler

LL(1) Parçalama Algoritması

Yazan : Şadi Evren ŞEKER Bu yazının amacı, derleyici tasarımı (compiler design) konusunda çok kullanılan parçalayıcılardan (parser) birisi olan LL1 parçalayıcısını (LL1 parser) açıklamaktır. LL(1) kelimesi, 3 konunun baş harflerinden oluşur. İlk L harfi, Left-to-Right scan, yani soldan sağa doğru…

Algoritma Analizi (Teory of Algorithms) Derleyiciler

Maximal Munch (Azami Lokma) Yöntemi

Yazan: Şadi Evren ŞEKER Algoritma, bilgisayar programlama veya bilgisayar bilimlerinde genelde derleyici tasarımı (compiler design) gibi dizgi (string) işlemenin yoğun olduğu alanlarda büyük lokma (maximal munch) veya en uzun eşleşme (longest match) olarak geçmektedir. Buradaki amaç, anlık olarak en büyük…

C / C++ Derleyiciler Programlama Dilleri

Lisan-ı Kaime (Dillerde Dik Açı, Orthogonal Languages)

Yazan : Şadi Evren ŞEKER Özellikle bilgisayar programlama dillerinde kullanılan bir terimdir. Buna göre dillerde bulunan özelliklerin birbirine dik olması, yani birbirinden bağımsız olması kast edilir. Kelime olarak, yöneylerin (vectors) dikliğinden esinlenilmiştir. Vektörlerin birbirine dik olması, aralarında ilişki bulunmaması (birbirine…

Derleyiciler Network (Ağ) Programlama Dilleri Veri Güvenliği (Cryptography) Veri Sıkıştırma (Data Compression)

Kod Kelimesi

Yazan : Şadi Evren ŞEKER Haberleşmede kullanılan bir terimdir. Bir kod kelimesi (code word), belirli bir teşrifatın (protocol, protokol) anlamlı en küçük parçasıdır. Her kod kendi başına tek bir anlam ifade eder ve bu anlam yeganedir (unique). Aynı yaklaşım programlama…

Automata (Otomatlar) Derleyiciler Donanım (Hardware) Graf Teorisi Programlama Dilleri Temel Bilgisayar Kavramları Veri Yapıları Yapay Zeka (Artificial Intelligence)

Mealy ve Moore Makineleri (Mealy and Moore Machines)

Yazan : Şadi Evren ŞEKER Bilgisayar bilimlerinde sıkça kullanılan sonlu durum makinelerinin (finite state machine, FSM veya Finite State Automaton , FSA) gösteriminde kullanılan iki farklı yöntemdir. Genelde literatürde bir FSM’in gösteriminde en çok moore makinesi kullanılır. Bu iki yöntem…

C / C++ Derleyiciler Programlama Dilleri

Preprocessor (Ön işlem)

Yazan : Şadi Evren ŞEKER Bilgisayar bilimlerinde, işlemcideki çalışmadan önce yapılacak işleri ifade etmek için kullanılan bir terimdir. Çoğu programlama dili açısından, programın çalışması aşamasına geçilmeden önce (run-time) yapılacak işleri belirtir. Genellikle bir betik (macro) şeklinde kayıtlı olarak dosyada duran…