Derleyici tasarımında sözcük ve söz dizim analizi gerçeklemesi
Implementing lexical and syntax analysis in compiler design
Yazar: İBRAHİM AKÇAY
Danışman: YRD. DOÇ. DR. NEJAT YUMUŞAK
Sakarya Üniversitesi / Fen Bilimleri Enstitüsü / Bilgisayar Mühendisliği Ana Bilim Dalı
Derece: Yüksek Lisans, 2004
Konu: Bilgisayar Mühendisliği Bilimleri-Bilgisayar ve Kontrol = Computer Engineering and Computer Science and Control

Özet:
Anahtar Kelimeler : Bilgisayar, Derleyici, Sözdizim Analizi, Sözcük Analizi. Günümüzde derleyiciler daha kapsamlı ve karmaşık yapılara sahiptir. Bu yüzden derleyiciyi oluşturan modüller ve bunların üretimleri konusu gelişim göstermiş ve birçok çözüm yöntemleri geliştirilmiştir. Genel anlamda bir derleyici altı temel modülden oluşur. Bitirme tezinde bu modüllerden ilk iki aşaması olan Sözcük Analizi ve Sözdizim Analizi konulan ele alınmıştır. Söcük Analizi derleyicinin içerisinde tanımlı dile ait sözcüksel yapıları tanımlar ve bunlar üzerindeki analizi gerçekleştirir. Sözdizim Analizi derleyicinin içerisinde tanımlı dile ait söz dizim yapılarını tanımlar ve analizini gerçekleştirir. Kısaca derleyiciye ait kelime yapılarının analizini Sözcük Analizi cümle yapılannm analizini ise Sözdizim Analizi gerçekleştirmektedir. Derleyiciye ait her bir modülün elde edilmesi için bir mekanizması ve bu mekanizmanın kullandığı bir otomat tipi vardır. Sözcük Analizi modülü için kullanılan mekanizma Regüler ifadelerdir. Sözcük Analiz içerisinde sözcük yapılarının tanımı Regüler ifadeler olarak tanımlanmaktadır. Dile ait her bir sözcük regüler ifadeler olarak tanımlanır. Sözcük analizini gerçeklemek için Finite Automata kullanılır. Bu amaçla her bir sözcüğe ait NFA diyagram modeli oluşturulur ve girişten gelen bilgi NFA makinesinde analiz edilir. Sözdizim Analiz modülü için kullanılan mekanizma Context-Free Grammer'dır. Sözdizim Analiz içerisinde söz dizim yapılarının tanımı Context-Free Grammer olarak yapılmaktadır. Dile ait her bir cümle CFG'de tanımlanır. Sözdizim analizini gerçeklemek için Push-Down Automata kullanılır. Bu amaçla oluşturulan CFG' yi PDA'ya dönüştürmek gerekir. PDA' da elde edilen geçiş tablosu ile girişten gelen bilgi PDA tarafından analiz edilir. XII

Abstract:
Keywords : Computer, Compiler, Syntax Analysis, Lexical Analysis. Today, compilers has more complex and specific structures. Therefore, moduls that creating compilers and its productions has developed with many solutions. In general, a compiler consist of six basic moduls. These two moduls that are called Lexical Analysis and Syntax Analysis was researched in this study. The Lexical Analysis identify defined expression in compiler language that includes defined statments and analysis under these structures. Breafly, Lexical Analysis process expression of compilers but Syntax Analysis process statments. There is a mechanism to optain each modul and automata type. It's Regular Expression for Lexical Analysis modul. The definition of statment structures in Lexical Analysis is defined as Regular Expression. Each statment that has a language defined as Regular Expression. Finite Automata is used to analysis word analysis. Therefore, NFA diagram model is created for each word and data that coming from inputs analysis by NFA machine. The mechanism for Syntax Analysis modul is Context-Free Grammer. The grammers structures in Syntax Analysis defined as Context-Free Grammer. Each sentence that has a language defined in CFG. Push-Down Automata is used to implement grammer analysis. So, it is necessary to replace created CFG to PDA. Inputs and transition table are analysis by PDA. XIII