Anda di halaman 1dari 19

TEORI BAHASA & OTOMATA

Novia Hasdyna, S.T., M.Kom


Apa itu TBO?

2
Bahasa

3
Otomata

4
Hubungan Bahasa dan
Otomata?

5
Yang
dipelajari
• Konsep Sentral Teori Otomata

• Mesin Otomata
Otomata : Automata adalah mesin abstrak dapat mengenali (recognize),
yang
menerima (accept), atau membangkitkan (generate) sebuah kalimat dalam
bahasa tertentu.
Automata berasal dari bahasa Yunani automatos, yang berarti sesuatu
yang bekerja secara otomatis (mesin)
Teori Otomata adalah teori mengenai mesin-mesin abstrak, dan berkaitan
erat dengan teori bahasa formal. ada beberapa hal yang berkaitan dengan
Otomata, yaitu Grammar. Grammar adalah bentuk abstrak yang dapat
diterima (accept) untuk membangkitkan suatu kalimat otomata
berdasarkan suatu aturan tertentu

6
Teori Bahasa
 Bahasa adalah kumpulan kalimat
 Semua bahasa dibangkitkan oleh sebuah tata bahasa
(Grammar)
 Bahasa di bagi 2 yaitu :

1. Bahasa natural yaitu bahasa manusia sehari-hari, seperti


bahasa inggris, bahasa indonesia, bahasa jawa dll
2. Bahasa Formal yaitu bahasa yang lebih kaku dengan aturan
yang lebih ketat, seperti bahasa pemrograman komputer
7
Bahasa Formal
Ada 2 hal penting yang terkait dgn bahasa formal :
1. Pembangkit kalimat (Generation) : berkaitan dengan
algoritma penghasil kalimat tersebut yang sesuai dengan
aturan tata bahasa (Grammar)
2. Pengenal Kalimat (Recognition) : Pembuatan algoritma
yang dapat mengetahui apakah suatu string s (kalimat)
termasuk anggota himpunan bahasa L

8
Elemen Bahasa Formal
 Abjad (alphabet): Himpunan berhingga dari simbol-simbol yang dapat disusun untuk
membentuk suatu kalimat. Dalam konteks teori bahasa: kalimat, string atau kata ketiganya
digunakan merujuk kepada hal yang sama, yaitu rangkaian simbol-simbol yang dapat
disusun dengan menggunakan simbol yang diambil dari himpunan abjad. Himpunan abjad
biasa dinotasikan dengan simbol ∑.

 Bahasa (Language): Himpunan seluruh string yang dapat dibangkitkan dari sebuah
tatabahasa (grammar) G. Bahasa yang dibangkitkan oleh tata bahasa G biasa dinotasikan
dengan L(G) atau L saja. Himpunan ini dapat berhingga atau tak berhingga.

 Aturan produksi (production rule : Adalah himpunan berhingga dari aturan-aturan


penataan simbol dalam pembentukan sebuah string. Dengan aturan ini kita mem-produksi
sebuah string , anggota suatu bahasa. Himpunan aturan produksi biasa disimbolkan sebagai
P.
9
Tujuan Belajar Otomata
Teori dasar untuk ilmu pembuatan compiler, parser, intepreter.
Kompilator (Inggris: compiler) adalah sebuah program komputer yang berguna
untuk menerjemahkan program komputer yang ditulis dalam bahasa pemrograman
tertentu menjadi program yang ditulis dalam bahasa pemrograman lain.

Terlepas dari pengertiannya yang demikian relatif luas, istilah kompilator biasa
digunakan untuk program komputer yang menerjemahkan program yang ditulis
dalambahasa pemrograman tingkat tinggi (semacam bahasa
Pascal, C++, BASIC, FORTRAN, Visual Basic, Visual C#, Java, xBase,
atau
COBOL) menjadi bahasa mesin, biasanya dengan bahasa Assembly sebagai
perantara.

Dalam komputasi, parser adalah salah satu komponen dalam sebuah interpreter atau
kompiler, yang memeriksa sintaks yang benar dan membangun struktur data (sering
beberapa jenis pohon parse, sintaks abstrak pohon atau struktur hirarkis lainnya) yang
tersirat dalam token masukan. Program pendeteksi kombinasi tombol sering menggunakan
penganalisis leksikal terpisah untuk membuat token dari urutan karakter masukan. Parser
dapat diprogram dengan tangan atau mungkin (semi-) otomatis dihasilkan (dalam beberapa
bahasa pemrograman) dengan alat (seperti Yacc) dari tata bahasa yang ditulis dalam
10 bentuk Backus-Naur.
Kompilator itu sendiri, yang menerima kode sumber dan menghasilkan
bahasa tingkat rendah (assembly)
Assembler, yang menerima keluaran kompilator dan menghasilkan
berkas objek dalam bahasa mesin
Linker, yang menerima berkas objek keluaran assembler untuk
kemudian digabungkan dengan pustaka-pustaka yang diperlukan
dan menghasilkan program yang dapat dieksekusi (executable)

Interpreter adalah perangkat lunak yang mampu mengeksekusi code


program (yang ditulis oleh programmer) lalu menterjemahkannya ke
dalam bahasa mesin, sehingga mesin melakukan instruksi yang
diminta oleh programmer tersebut. Perintah-perintah yang dibuat oleh
programmer tersebut dieksekusi baris demi baris, sambil mengikuti
logika yang terdapat di dalam kode tersebut

11
Konsep TeoriOtomata
Sentral
• Alfabet
• String
• Pangkat Alfabet
• Pangkat Bintang Kleen
• Konkatenasi
• Bahasa

12
Mesin
Otomata
• FSA : Finite State Automata

• PDA : Pushdown Automata

• Mesin Turing

13
Otomata Sederhana
Contoh mesin otomata sederhana :
Otomata pada saklar listrik
0 1

 Bila mesin mendapat string input :


1
off on  0  diterima
 010  diterima
0
 …..???

Sebuah string input diterima bila mencapai state akhir ( final


state ) yang digambarkan dengan lingkaran ganda

14
Otomata Sederhana
Finite automaton berikut dapat dinyatakan sebagai
bagian dari lexical analyzer.

Vending Machine

15
Otomata Sederhana

16
Otomata Sederhana

17
Materi Satu
Semester
1. Pendahuluan
2. FSA (Finite State Automata)
3. Ekspresi Reguler
4. Sifat Bahasa Reguler
5. Pumping Lemma
6. CFG (Context Free Grammar)
7. PDA (Push Down Automata)
8. Mesin Turing
18
9. Review
Penilaian

Kehadiran &
Keaktifan : 20% UTS: 20%

Tugas: 30% UAS: 30 %

19

Anda mungkin juga menyukai