TEKNIK INFORMATIKA UNIVERSITAS PASUNDAN TAHUN AJARAN 2006/2007 Syarat kelulusan :
Minimum kehadiran tatap muka di
kelas 75 % dari 14 kali tatap muka yang direncanakan. Mengikuti praktikum Mengikuti Ujian Tengah Semester (UTS) Mengikuti Ujian Tengah Semester (UAS) Bobot penilaian :
Komponen Bobot (%)
UTS 25 UAS 25 TUGAS/PR 25 PRAKTIKUM 25 Materi perkuliahan : Pendahuluan Review Konsep Bahasa dan Hirarki Chomsky Finite State Automata (FSA) : PrinsipKerja FSA Determnistik dan Non-Deterministik (NFSA) Reduksi jumlah state pada FSA Ekivalensi NFSA ke FSA NFSA dengan empty move Ekivalensi NFSA empty move ke NFA tanpa empty move Materi perkuliahan : Ekspresi Reguler dan Aturan Produksi pada FSA FSA dengan Output Pohon Penurunan dan Penyederhanaan CFG Bentuk Normal Chomsky dan Penghilangan Rekursif Kiri Bentuk Normal Greibach (perkalian matriks) Push Down Automata (PDA) Mekaisme Kerja PDA untuk suatu CFG Deskripsi Seketika Referensi : 1. Hopcroft, Jhon E dan Jeffrey D.Ullman, “Introduction to Automata Theory, Languages, and Computation”, Addisson- Wesley Publishing, 1979 2. Utdirartatmo Firar, “Teori Bahasa dan Otomata”, J&J Learning Yogyakarta, 2001 3. Bambang Hariyanto, “Teori Bahasa, Otomata, dan Komputasi”, Informatika Bandung, 2004 Sesi pertanyaan
??!#@*&$ Kedudukan Teori Bahasa Ilmu Komputer
Model dan Gagasan Teknik Rekayasa
Komputasi Komputasi
Teori Bahasa Otomata Hardware Software
Spesifikasi Bahasa Pemrograman Bahasa harus didefinisikan secara tepat. Spesifikasinya meliputi : Himpunan simbol-simbol yang digunakan untuk membentuk program yang benar. Himpunan yang benar secara sintaktik (Aturan Sintak). “Makna” dari Program tersebut. Mengapa mempelajari teori ?! :
“ Suatu teori hanya menarik ketika dapat
membantu dalam pencarian solusi terbaik. “
“ Teori memberikan konsep dan prinsip
yang menolong untuk memahami prilaku dari suatu disiplin ilmu. “ Konsep Bahasa dan Otomata : Simbol adalah suatu entitas abstrak yang tidak didefinisikan secara formal. Bahasa merupakan rangkaian simbol-simbol yang memiliki makna. Bahasa formal adalah suatu abstraksi yang terdiri dari himpunan simbol-simbol dan aturan-aturan yang bisa dikombinasikan kedalam entitas yang disebut kalimat. Otomata adalah suatu bentuk yang memiliki fungsi- fungsi dari komputer digital, mampu untuk : Menerima input, Menghasilkan output, Memiliki temporari storage, Membuat keputusan dalam mentransformasikan input menjadi output. Mekanisme kerja Otomata : Input Output (bahasa) (diterima/tidak) Otomata
1. Terdiri atas sejumlah state berhingga, yang
dianggap sebagai memori mesin. 2. Input merupakan bahasa yang harus dikenali oleh mesin. 3. Membuat keputusan yang mengindikasikan sebuah input diterima atau tidak 4. Dapat digunakan untuk menghasilkan bahasa yang aturannya ditentukan oleh aturan bahasa itu sendiri. Hirarki Chomsky : Tata bahasa merupakan kumpulan dari himpunan variabel, simbol terminal, simbol awal yang dibatasi oleh aturan produksi. Tingkatan Bahasa menurut chomsky (Hirarki Chomsky) :
Bahasa Mesin Otomata Batasan Aturan Produksi
Regular FSA Ruas kiri : sebuah simbol variabel Ruas kanan : maksimal memiliki1 simbol variabel yang diletakkan diposisi paling kanan. Bebas PDA Ruas kiri : sebuah simbol variabel Konteks Konteks LBA Panjang ruas kiri harus lebih kecil Sensitif sama dengan panjang ruas kanan. Bahasa Mesin Turing Tidak ada batasan Alami Bahasa pemrograman : dibentuk oleh aturan yang dapat direpresentasikan dengan struktur sintaks. Sintaks bahasa pemrograman mengikuti tata bahasa bebas koteks (Context Free grammar), bisa berasal dari bahasa alami untuk kejelasan dan kemudahan pembacaan, matematika untuk ekspresi aritmetika, dan bahasa pemrograman yang telah ada. Tujuan Bahasa Pemrograman : Komunikasi dengan manusia, Pencegahan dan deteksi kesalahan, Usability, mudah dipelajari dan diingat, Efektifitas pemrograman, Compilability, Efisiensi, membuat bahasa lebih sederhana, sehingga mudah untuk menghasilkan kode yang efisien, Machine independent, Kesederhanaan (Simplicity), pendefinisian yang baik dan konsep yang sederhana Uniformity, mengerjakan hal yang sama dengan cara yang sama, Orthogonality, setiap fungsi bekerja tanpa harus mengetahui stuktur yang lain, Generalisasi dan spesialisasi, jika kita diperbolehkan melakukan sesuatu , maka lakukan hal lain dengan cara serupa. Penutup