Anda di halaman 1dari 4

TEKNIK KOMPILASI Pertemuan 2 Dosen : Tri Ari Cahyono, S.Kom, M.

Kom -----------------------------------------------------------------------------KONSEP DAN NOTASI BAHASA Bahasa adalah kumpulan kalimat. Kalimat adalah rangkaian kata. Kata adalah komponen terkecil kalimat yang tidak bisa dipisahkan lagi. Contoh : Aku mencintai kamu bahasa indonesia I Love You bahasa inggris Readln(x); writeln(x); bahasa pascal

Dalam bahasa pemrograman, kalimat dikenal sebagai ekspresi, dan kata sebagai token. Kata terdiri atas beberapa karakter. Kelompok karakter yang membentuk sebuah token dinamakam lexeme untuk token tersebut. Setiap token yang dihasilkan, disimpan dalam tabel simbol. Token tertentu harus memenuhi aturan yang disebut Pattern. Derivasi adalah sebuah proses dimana suatu himpunan produksi akan diturunkan / dipilah-pilah dengan melakukan sedertan produksi sehingga membentuk untai terminal.

TATA BAHASA (GRAMMAR) Tata bahasa bisa didefinisikan secara formal sebagai kumpulan dari himpunan-himpunan variabel, simbol terminal, simbol non terminal, simbol awal yang dibatasi oleh aturan-aturan produksi. Grammar G didefinisikan sebagai pasangan 4 tuple yang tertulis dalam bentuk himpunan {..} yaitu : VT, VN, S, dan Q. Penulisan : G (VT, VN, S, Q) dimana : VT VN S Q : Simbol terminal/token/alfabet (tidak bisa diturunkan) : Simbol non terminal (masih bisa diturunkan) : Simbol awal ( S VN) : Aturan produksi

1. Simbol Terminal (VT) huruf kecil awal alfabet, misalnya : a, b, c

simbol operator, misalnya : +, , dan simbol tanda baca, misalnya : (, ), dan ; string yang tercetak tebal, misalnya : if, then, dan else.

2. Simbol Non Terminal (VN) huruf besar awal alfabet, misalnya : A, B, C huruf S sebagai simbol awal string yang tercetak miring, misalnya : expr dan stmt. 3. Istilah Produksi Tata Bahasa x=abc |x| = 3 |x| =Panjang x (jumlah isi x) = tidak terbatas/hampa ||= 0 = Derivasi S ab = S menghasilkan ab = S menurunkan ab E T | T+E Pemendekan dari : ET E T+E SN S anggota bagian dari N

HIRARKI CHOMSKY Pada tahun 1959 seorang ahli bernama Noam Chomsky melakukan penggolongan tingkatan bahasa menjadi 4 bagian yang dikenal dengan sebutan Hirarki Chomsky. Tingkatan bahasa tersebut adalah : 1. Tipe 0 yaitu Unrestricted Grammar (UG) Mesin Pengenal : Finite State Automata (FSA) 2. Tipe 1 yaitu Context Sensitive Grammar (CSG) Mesin Pengenal : Push Down Automata (PDA)

3. Tipe 2 yaitu Context Free Grammar (CFG) Mesin Pengenal : Linear Bounded Automata (LBA) 4. Tipe 3 yaitu Regular Grammar (RG) Mesin Pengenal : Turing Machine (TM) Tabel Aturan Produksi :
Tipe Regular Grammar Ruas Kiri () VN ||=1 VN || = 1 (VT |VN) || > 0 (VT | VN) || > 0 Ruas Kanan()
{VT , VT VN} atau {VT , VN VT }

Contoh P abR Q abc R Scac P aQb Q abPRS aD Da AD aCD CB DB ADc

Context Free Grammar Context Sensitive Grammar Unrestricted Grammar

(VT | VN ) (VT | VN ) || || (VT | VN )

NOTASI BNF (BACKUS NAUR FORM) Aturan-aturan produksi dapat dinyatakan dalam bentuk BNF. Simbolsimbol BNF adalah sebagai berikut : ::= | < > { } Identik dengan simbol Menyatakan atau Mengapit simbol variabel / non terminal Pengulangan 0 sampai n kali pada aturan produksi

Contoh : Aturan Produksi

E T | Ta Tb B Cb C Ca B Caaaaaaaaaab

Notasi BNF E ::= <T> | <T>a T ::= b B ::= <C>b C ::= <C>a B ::= <C>{a}b

Soal : Ubah aturan produksi berikut menjadi BNF


B b H bdB K dddddddddC

DIAGRAM SINTAKS Selain BNF diagram sintak merupakan alat bantu dalam pembuatan parser/ analisis sintaksis. Simbol : Kotak = simbol nonterminal Bulat = simbol terminal.

Contoh : Aturan Produksi

E T | Ta | Tb C b

Diagram sintaks : E T a b C b

Soal : Ubah aturan produksi berikut menjadi diagram sintaks


B b H bdB

Anda mungkin juga menyukai

  • P7
    P7
    Dokumen4 halaman
    P7
    mgrin30
    Belum ada peringkat
  • PBO Lanjutan Kelas Karyawan II
    PBO Lanjutan Kelas Karyawan II
    Dokumen19 halaman
    PBO Lanjutan Kelas Karyawan II
    mgrin30
    Belum ada peringkat
  • P6
    P6
    Dokumen3 halaman
    P6
    mgrin30
    Belum ada peringkat
  • P2
    P2
    Dokumen4 halaman
    P2
    mgrin30
    Belum ada peringkat
  • P10
    P10
    Dokumen5 halaman
    P10
    mgrin30
    Belum ada peringkat
  • 1 - Untuk Apa Membuat Compiler
    1 - Untuk Apa Membuat Compiler
    Dokumen4 halaman
    1 - Untuk Apa Membuat Compiler
    mgrin30
    Belum ada peringkat
  • TEKOM1
    TEKOM1
    Dokumen6 halaman
    TEKOM1
    mgrin30
    Belum ada peringkat
  • TEKOM4
    TEKOM4
    Dokumen8 halaman
    TEKOM4
    mgrin30
    100% (1)
  • Pertemuan 9
    Pertemuan 9
    Dokumen9 halaman
    Pertemuan 9
    mgrin30
    Belum ada peringkat
  • Pertemuan 8
    Pertemuan 8
    Dokumen9 halaman
    Pertemuan 8
    mgrin30
    Belum ada peringkat
  • Pertemuan 10
    Pertemuan 10
    Dokumen6 halaman
    Pertemuan 10
    mgrin30
    Belum ada peringkat
  • Pertemuan 4
    Pertemuan 4
    Dokumen15 halaman
    Pertemuan 4
    mgrin30
    Belum ada peringkat
  • Pertemuan 7
    Pertemuan 7
    Dokumen12 halaman
    Pertemuan 7
    mgrin30
    Belum ada peringkat
  • Pertemuan 6
    Pertemuan 6
    Dokumen7 halaman
    Pertemuan 6
    mgrin30
    Belum ada peringkat
  • Pertemuan 13
    Pertemuan 13
    Dokumen10 halaman
    Pertemuan 13
    mgrin30
    Belum ada peringkat