Pendahuluan Tujuan pembelajaran : 1. Mahasiswa memahami cara kerja serta proses yang terjadi pada sebuah compiler 2.

Mahasiswa memahami konsep pembuatan sebuah compiler 3. Mahasiswa mengetahui bagaimana sebuah bahasa pemograman dapat diterjemahkan oleh mesin. Materi pembelajaran 1. Bentuk-bentuk karakter dan kelas grammar. 2. Ekspresi regular dan outomata. 3. Analisa leksikal sebagai tahap awal kompilasi. 4. Analisa sintaks, bentuk-bentuk derivasi serta implementasi parsing. 5. Analisa semantik. 6. Penanganan kesalahan kompilasi dan fungsi tabel informasi.
Teknik kompilasi Merupakan teknik dalam melakukan pembacaan suatu program yang ditulis dalam bahasa sumber, kemudian diterjemahkan ke dalam suatu bahasa lain yang disebut bahasa sasaran.Dalam melakukan proses penerjemahan tersebut, sudah tentu kompilator akan melaporkan adanya keanehan atau kesalahan yang mungkin ditemukannya. Proses penerjemahan yang dilakukan oleh kompilator ini disebut proses kompilasi. Bila dipandang sepintas, maka akan timbul beranekaragam kompilator yang dapat dibuat : Bahasa sumber seperti FORTRAN, PASCAL, C dan juga bahasa lainnya yang sifat dan pemakaiannya agak spesifik atau khusus, seperti bahasa untuk program DBASE, SPSS dan sebagainya. Bahasa sasaran dapat berupa bahasa sumber lain seperti C, FORTRAN dan lain sebagainya atau bahasa mesin ( machine language ) yang digunakan oleh suatu prosesor mikro atau sumber komputer besar maupun komputer super.

-

Sejarah perkembangan suatu kompilator sudah dimulai sejak lama, yaitu pada saat dimulai ditemukannya komputer awal 1950-an. Sejak waktu tersebut teknik dan cara pembentukan suatu kompilator telah berkembang dengan sangat pesat dan pembentukan suatu kompilator dapat dilakukan makin mudah. Demikian pula program bantu untuk membuat suatu kompilator sudah dapat diperoleh sehinggga pembentukan kompilator dapat dilakukan dengan cepat. Kompilator pertama yang dibuat adalah kompilator untuk bahasa FOTRAN yang pada saat itu dikembangkan dengan sejumlah tenaga ahli yang setara dengan pekerjaan yang dilakuakn oleh 18 orang. Dengan adanya program bantu dan tata cara pembentukan yang sistematis dan tertata dengan baik serta pendefinisian struktur bahasa yang cermat, maka suatu kompilator untuk bahasa yang terstruktur seperti PASCAL atau C dapat dikembangkan. Proses kompilasi dari suatu kompilator pada dasarnya dapat dibagi ke dalam 2 bagian utama yaitu bagian analisis dan bagian sintesis : Tahap analisi program dapat ditulis dalam bahasa sumber dibagi dan dipecah ke dalam beberapa bagian yang kemudian akan dipresentasika ke dalam suatu bentuk antara dari n program sumber. Operasi-operasi yang dilakukan oleh program sumber ditentukan dan

. Proses analisis leksikal b. Sedangkan kompilasi adalah ilmu yang mempelajari bagaimana kita dapat merancang dan membangun bahasa pemograman. maka suatu program khusus yang disebut dengan suatu praposesor digunakan untuk mengumpulkan modul-modul yang saling lepas ini kedalam suatu program baru. Proses optimasi kode (code optimizer) Sebelum bahasa sasaran dapat dihasilkan. Untuk menanggulangi hal ini. Untuk tahap sintesis terdiri dari 2 bagian utama. simbol awal yang dibatasi oleh aturan-aturan produksi. Model dari sistem apapun yang akan kita komputasikan. sedangkan anak dari nodal (titik) tersebut memberikan argumen yang diperlukan. dalam melakukan ini tiap bagian utama akan berhubungan dan berkomunikasi dengan suatu berkas tabel yang disebut tabel simbol ( symbol table) yaitu suatu tabel yang berisi seemua simbol yang digunakan dalam bahasa sumber. Praposesor dapat pula untuk melengkapi singkatan -singkatan atau ungkapan ungkapan maupun kependekan-kependekan yang digunakan dalam bahasa sumber seperti pendefinisian makro dan lain sebagainya. Proses analisis sintaktik c. Kompilasi merupakan salah satu bidang yang memanfaatkan teori ini. simbol non terminal. yaitu : a. Secara umum proses dalam tahap analis terdir dari 3 bagian utama. Proses analisis semantik Tahap sintesis yang berikutnya program sasaran dibentuk berdasarkan representasi antara yang dihasilkan pada tahap analisis. Hubunga otomata dengan proses kompilasi Otomata adalah model. Konsep dan notasi bahasa Tata bahasa (grammar) adalah sekumpulan dari himpunan variabel-variabel. Selain kompilator masih diperlukan beberapa program lainnya sebelum dapat dibentuk bahasa sasaran yang dapat dijalankan. Proses yang menghasilkan kode (code generator) b.- dicatat dalam suatu struktur pohon (tree) yang disebut dengan nama pohon sintaks (sintax tree) dalam hal ini setiap nodal pada tree tersebut menyatakan suatu operasi. simbol-simbol terminal. Teknik kompilasi merupakan kelanjutan dari konsep-konsep yang telah kita pelajari dalam teori bahasa dan automata. Seperti suatu bahasa sumber dapat dituliskan dalam beberapa modul yang terpisah dan disimpan dalam beberapa file yang terpisah. yaitu : a.

Sign up to vote on this title
UsefulNot useful