TEKNIK KOMPILASI. Oleh. Hartono

dokumen-dokumen yang mirip
KOMPILASI. Assembler Bahasa Rakitan Bahasa Mesin Compiler (Kompilator) Bahasa Tingkat Tinggi Bahasa tingkat rendah

Proses Kompilasi. Otomata dan Pengantar Kompulasi Pertemuan 3

Pendahuluan. Tujuan Pembelajaran :

LAPORAN PRAKTIKUM 1 TEKNIK KOMPILASI

Compiler & Interpreter

Teknik Kompilasi II TEKNIK KOMPILASI. Ernastuti & Sulistyo P 1/52. Ernastuti & Sulistyo

PENGANTAR TEKNIK KOMPILASI

PENGEMBANGAN PROTOTIPE APLIKASI KONVERSI KODE DARI BAHASA C KE PASCAL

TEKNIK KOMPILASI (TEKKOM) ISTIQOMAH, S.KOM /SEMESTER VI

TEKNIK KOMPILASI Tony Darmanto,ST / Smt V S1 TI / STMIK WIDYA DHARMA/ Hal 1

Fase-fase proses sebuah kompilasi

BAB I PENDAHULUAN. 1.1 Latar Belakang

TEORI BAHASA & OTOMATA (PENGENALAN KOMPILASI) PERTEMUAN VI Y A N I S U G I Y A N I

Pendahuluan. Kuliah online : Tekkom [2013/VI]

PEMROGRAMAN KOMPUTER DASAR. Kuliah ke-1

Teori Komputasi 10/15/2015. Bab 1: Pendahuluan. Teori Komputasi dan Teknik Kompilasi. Teori Komputasi dan Teknik Kompilasi

TEKNIK KOMPILASI. Alamat untuk tugas: Informasi: DADANG MULYANA. dadang mulyana 2013

BAB I PENGANTAR Pendahuluan Penyajian 1.1 Latar Belakang 1.2 Algoritma dan Struktur Data

MODEL KOMPILATOR FUNGSI UMUM BAGIAN KOMPILATOR. Dosen Pengampu: Utami Dewi Widianti,S.Kom

LANGUAGES AND TRANSLATOR

Alat bantu (tools) dalam pembuatan parser/ analisis sintaksis. Menggunakan simbol persegi panjang untuk non terminal

SATUAN ACARA PERKULIAHAN (SAP) Semester Penempatan

Heru Suhartanto, PhD

Pengenalan Algoritma & Pemrograman

Implementasi OOP Pada Perangkat Lunak Pemrograman

Algoritma Pemrograman I

SEMANTIK. Sintak mendifinisikan suatu bentuk program yang benar dari suatu bahasa.

SATUAN ACARA PERKULIAHAN STMIK UBUDIYAH INDONESIA SEMESTER GENAP TAHUN AKADEMIK 2013/2014

Algoritma dan Struktur Data

JAVA DAN APLIKASI TEKNOLOGI INFORMASI DI JURUSAN SISTEM INFORMASI

BAHASA PEMROGRAMAN. Merupakan prosedur/tata cara penulisan program.

Kualitas bahasa pemrograman: Ekspresivitas : secara jelas menggambarkan algoritma yang dibuat oleh programmer

1. Algoritma & Pemrograman

IT234 ALGORITMA DAN STRUKTUR DATA

Review C/C++ & Intro to Java. Pemrograman Berorientasi Obyek IT209

SEMANTIK. Int vector[10];

Pengayaan Software/Hardware dan Pengantarmukaan

Tahap pengembangan program

DASAR PEMROGRAMAN. PENGANTAR BAHASA C ( Sejarah, Struktur Pemrograman, Tipe Data, Operator ) Djoko Soerjanto, M.Kom

BAB I PENDAHULUAN A. Latar Belakang B. Tujuan C. Manfaat

ALGORITMA PEMROGRAMAN 1C SEMANTIKS

Pada akhir pembahasan, peserta diharapkan dapat :

Bahasa Pemrograman. Secara umum terdapat 4 kelompok Bahasa Pemrograman yaitu:

ALGORITMA DAN PEMROGRAMAN #2

Web Site :

Fungsi Bahasa pemrograman adalah sebagai media untuk menyusun dan memahami serta sebagai alat komunikasi antara pemrogram dengan computer.

Asal Mula Software Komputer

Teknik Kompiler 12. oleh: antonius rachmat c, s.kom

BAB I PENGENALAN TEKNIK KOMPILASI

BAB II TINJAUAN PUSTAKA

ORGANISASI KOMPUTER. Pertemuan II KONSEP DASAR KOMPUTER - SOFTWARE -

TEKNIK KOMPILASI. Firrar Utdirartatmo

A. Pemahaman Awal. Oleh : Fiftin Noviyanto

ANALISIS DAN PERANCANGAN PERANGKAT LUNAK

TUGAS AKHIR MINGGU APLIKASI KALKULATOR BERBASIS JAVA

UNIVERSITAS GUNADARMA

Algoritma Pemrograman 2C

BAB II LANDASAN TEORI Konsep Dasar Membangun Aplikasi Berbasis Web

IT234 - Algoritma dan Struktur Data. Ramos Somya

Teknik Optimasi. Teknik Kompilasi Dosen: Utami Dewi W.,S.Kom

Membuat aplikasi sederhana menggunakan java NetBeans dan cara menginstal java NetBeans

GARIS-GARIS BESAR PROGRAM PENGAJARAN (GBPP)

Algoritma dan Struktur Data

KOM204 : BAHASA PEMROGRAMAN

MK. PEMROGRAMAN SISTEM Semester/SKS : 6/3 COMPILER. Jurusan Sistem Komputer S1 Universitas Gunadarma

Pendahuluan. Komputasi Nuklir. 29 Oktober Komputasi Nuklir Pendahuluan 29 Oktober / 41

ALGORITMA & PEMROGRAMAN

8/4/2011. Microprocessor & Microcontroller Programming. Bahasa Pemrograman. Bahasa Pemrograman. Bahasa Pemrograman

Pengantar Sistem Komputer & Algoritma

LAPORAN 4 PEMOGRAMAN JAVA III APPLICATION PROGRAMMING INTERFACE

Pengenalan Pemrograman

PEMAHAMAN DASAR DASAR JAVA

A. Pemahaman Awal. Hardware dan Software(1) Ada beberapa perangkat utama di komputer 20/01/2012

SEMANTIK Syntax mendefinisikan suatu bentuk program yang benar dari suatu bahasa.

SATUAN ACARA PERKULIAHAN UNIVERSITAS GUNADARMA

Pengenalan Pemrograman Komputer (Software)

BAB 3 BAHASA BASIS DATA (DATABASE LANGUAGE)

LAPORAN 2 PEMOGRAMAN JAVA III APPLICATION PROGRAMMING INTERFACE

2 operasi ini lebih cepat diterima di kalangan para pengguna dan semakin banyak yang menggunakan sistem operasi ini. Kemajuan teknologi saat ini dapat

Hirarki Comsky. Unrestricted. Context Sensitive Context free Regular

Komputer memiliki dua komponen utama. Yang pertama adalah hardware (perangkat keras) yang tersusun atas komponen elektronik dan mekanik.

Pengantar Teknologi Sistem Informasi C

ANALISIS SEMANTIK. Teknik Kompilasi Dosen: Utami Dewi W.,S.Kom

ALGORITMA GREEDY : MINIMUM SPANNING TREE. Perbandingan Kruskal dan Prim

Teknik optimasi. Teknik optimasi kode program Tujuan: menghasilkan kode program yang berukuran lebih kecil dan lebih cepat pada saat dieksekusi.

TEKNIK KOMPILASI PERTEMUAN Ke 4 dan 5 Abdul Muis Mappalotteng ANALISIS SEMANTIK

Learning Outcomes. akan mampu : (C3) perancangan compiler yang paling optimal (C4)

BAB III LANDASAN TEORI. Dalam mendefinisikan istilah bimbingan, para ahli bidang bimbingan dan

BAB 1 PENDAHULUAN. Dalam pengembangan perangkat lunak, tim developer membangun cetak

TEKNIK KOMPILASI. Dosen : Dwi Retno Wahyuningsih, S. Kom. Jurusan : Teknik Informatika Semester Genap 2007/2008

BAB 2 Pengenalan Bahasa JAVA

Pengenalan Algoritma

Brigida Arie Minartiningtyas, M.Kom

Objectives Menjelaskan sejarah dan ruang lingkup pemakaian bahasa C Menjelaskan kelebihan dan kekurangan bahasa C Menjelaskan proses kompilasi dan lin

SINTAKS. Sintaks dari bahasa pemrograman di defenisikan dengan 2 kumpulan aturan, yaitu:

TEORI BAHASA DAN AUTOMATA

PENGENALAN DASAR PEMROGRAMAN

PERANCANGAN DAN IMPLEMENTASI INTERPRETER BAHASA X PADA NOKIA 9210i

TEKNIK KOMPILASI. Dosen : Dwi Retno Wahyuningsih, S. Kom. Jurusan : Teknik Informatika Semester Genap 2007/2008

BAB I SEKILAS TENTANG C

Transkripsi:

TEKNIK KOMPILASI Oleh Hartono

Pengenalan 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 barang tentu kompilator akan melaporkan adanya keanehan-keanehan atau kesalahan yang mungkin ditemukannya. Proses penerjemahan yang dilakukan oleh kompilator ini disebut proses kompilasi (compiling). Bila dipandang sepintas lalu, maka akan timbul beranekaragam kompilator yang dapat dibuat antara lain sebagai berikut : bahasa Sumber seperti bahasa FORTRAN, PASCAL, C dan juga bahasa-bahasa lainnya yang sifat dan pemakaiannya agak spesifik atau khusus, seperti bahasa untuk program DBASE, SPSS dan lain sebagainya. Bahasa Sasaran dapat berupa bahasa sumber lain seperti C, FORTRAN dan lain sebagainya atau Bahasa Mesin (Machine Language) yang digunakan oleh suatu prosessor mikro atau sumber komputer besar maupun komputer super. Sejarah perkembangan suatu kompilator sudah dimulai sejak lama, yaitu pada saat mulai ditemukannya komputer pada awal 1950-an. Sejak waktu tersebut teknik dan cara pembentukan suatu kompilator telah berkembang dengan sangat pesat dan pembentukkan suatu kompilator dapat dilakukan makin mudah. Demikian pula program bantu (tools) untuk membuat suatu kompilator sudah dapat diperoleh sehingga pembentukan suatu kompilator dapat dilakukan dengan cepat. Kompilator pertama yang dibuat adalah kompilator untuk bahasa FORTRAN yang pada saat itu dikembangkan dengan memakan sejumlah tenaga ahli yang setara dengan pekerjaan yang dilakukan 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 analisis program yang ditulis dalam bahasa sumber dibagi dan dipecah ke dalam beberapa bagian yang kemudian akan dipresentasikan ke dalam suatu bentuk antara dari program sumber. Operasi-operasi yang dilakukan oleh program sumber ditentukan dan 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, sedangkan anak dari nodal (titik) tersebut memberikan argumen yang diperlukan secara umum proses dalam tahap analis terdiri dari 3 bagian utama, yaitu : Proses analisis leksikal Proses analisis sintaktik

Proses analisis semantic Tahap sintesis yang berikutnya program sasaran dibentuk berdasarkan representasi antara yang dihasilkan pada tahap analisis. Untuk tahap sintetis terdiri dari 2 bagian utama, yaitu: proses yang menghasilkan kode (code generator) Proses optimasi kode (code optimizer) Sebelum Bahasa sasaran dapat dihasilkan, 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 semua simbol yang digunakan dalam bahasa sumber. Selain kompilator masih diperlukan beberapa program lainnya sebelum dapat dibentuk bahasa sasaran yang dapat dijalankan. Seperti suatu bahasa sumber dapat dituliskan dalam beberapa modul yang terpisah dan disimpan dalam beberapa file yang terpisah. Untuk menanggulangi hal ini, maka suatu program khusus yang disebut dengan suatu praprosesor digunakan untuk mengumpulkan modul-modul yang saling lepas ini ke dalam suatu program baru. Praposesor dapat pula melengkapi singkatan-singkatan atau ungkapanungkapan maupun kependekan-kependekan yang digunakan dalam bahasa sumber seperti pendef. Melakukan kompilasi program Bahasa pemograman yang menggunakan tekhnik kompilasi. Setelah kode java selesai di tuliskan, kode tersebut dikompilasi sehingga menjadi file binary. file binary merupakan hasil terjemahan kode program yang kita tulis menjadi bentuk yang dapat dibaca oleh komputer. File binary hasil kompilasi program Java disebut juga dengan bytecode. file ini disimpan dengan ekstensi dile *class. setiap file berisi kode program java (*java), akan dikompilasi sendiri-sendiri sehingga setiap file *java mempunyai hasil kompilasinya (*class).