Teori bahasa dan otomata 1

3,123 views

Published on

Published in: Technology
1 Comment
0 Likes
Statistics
Notes
  • Be the first to like this

No Downloads
Views
Total views
3,123
On SlideShare
0
From Embeds
0
Number of Embeds
4
Actions
Shares
0
Downloads
70
Comments
1
Likes
0
Embeds 0
No embeds

No notes for slide

Teori bahasa dan otomata 1

  1. 1. 1Teori Bahasa dan Otomata 1 doktafia 10-Mar-2012
  2. 2. 2 doktafia 10-Mar-2012Pendahuluan (1/3)• Ilmu komputer memiliki dua komponen utama : ▫ Model dan gagasan mendasar mengenai komputer ▫ Teknik rekayasa untuk perancangan sistem komputer meliputi hardware dan software.• Teori bahasa & otomata termasuk dalam bagian pertama yang diterapkan pada perancangan digital, pembuatan bahasa pemograman, dan kompilator.• Teori otomata mempelajari model mesin komputer menggunakan model matematika.
  3. 3. 3 doktafia 10-Mar-2012Pendahuluan (2/3)• Teori otomata merupakan kajian mengenai perangkat komputasi abstrak, atau bisa dikatakan ‘’mesin abstrak’’• Otomata adalah mesin abstrak yang dapat mengenali (recognize), menerima (accept), atau membangkitkan (generate) sebuah kalimat dalam bahasa tertentu• Pada awalnya otomata ditujukan untuk memodelkan fungsi otak, tetapi secara ekstrim tujuan tersebut akhirnya berubah untuk berbagai keperluan lainnya.• Pada tahun 1950-an, pakar bahasa N. Chomsky mulai mempelajari studi tentang tata bahasa formal (formal grammar). Secara langsung tata bahasa tersebut tidak terkait dengan mesin, tetapi memiliki hubungan erat dengan otomata abstrak dan saat ini menjadi dasar bagi sejumlah komponen perangkat lunak, termasuk bagian-bagian dari kompiler.
  4. 4. 4 doktafia 10-Mar-2012Pendahuluan (3/3)• Grammar memiliki manfaat sangat besar di ilmu informatika/komputer untuk mendeskripsikan dan mendefinisikan sintaks bahasa pemrograman dan bahasa-bahasa formal yang lain.• Grammar diterapkan pada perancangan kompilator dan bidang-bidang lain dalam ilmu komputer.
  5. 5. 5 doktafia 10-Mar-2012Beberapa Pengertian Dasar• Simbol adalah sebuah entitas abstrak. Sebuah huruf atau angka adalah contoh simbol.• String/untai/ adalah deretan terbatas (finite) simbol-simbol ▫ Ex : jika a,b,c adalah simbol, maka abcb adalah string yang dibangun dari ketiga simbol tersebut.• Jika w adalah sebuah string, maka panjang string dinyatakan sebagai |w|, yang didefinisikan sebagai banyak simbol yang menyusun string tersebut. ▫ Ex : jika w = abcb maka |w| = 4• String hampa adalah sebuah string dengan nol buah simbol. String hampa dinyatakan dengan simbol ε atau ^ sehingga | ε | = 0• Bahasa (language) adalah kumpulan dari untai-untai atau string
  6. 6. 6 doktafia 10-Mar-2012Konsep Dasar (1/4) Si Kucing Kecil Menendang Bola Besar
  7. 7. 7 doktafia 10-Mar-2012Konsep Dasar (2/4)• Pohon sintaks dapat dituliskan dalam bentuk sebuah produksi : 1. <Kalimat>  <Subjek><Predikat> 2. <Subjek>  <Kata Sandang><Kata Benda><Kata Keadaan> 3. <Predikat>  <Kata Kerja><Objek> 4. <Objek>  <Kata Benda><Kata Keadaan> 5. <Kata Sandang>  Si 6. <Kata Benda>  Kucing | Bola 7. <Kata Keadaan>  Kecil | Besar 8. <Kata Kerja>  Menendang• Untai terminal dapat dibentuk dengan melakukan sederetan produksi menggunakan produksi yang ada. Proses ini disebut dengan Derivasi.
  8. 8. 8 doktafia 10-Mar-2012Konsep Dasar (3/4) Si Kucing Kecil Menendang Bola BesarDerivasi untuk untai di atas adalah :<Kalimat>  <Subjek><Predikat>  <Kata Sandang><Kata Benda><Kata Keadaan><Predikat>  <Kata Sandang><Kata Benda><Kata Keadaan><Kata Kerja> <Objek>  <Kata Sandang><Kata Benda><Kata Keadaan><Kata Kerja> <Kata Benda><Kata Keadaan>  Si Kucing Kecil Menendang Bola BesarUntai lain yang bisa terbentuk :Si Bola Kecil Menendang Kucing BesarSi Kucing Besar Menendang Bola Kecil, dll.
  9. 9. 9 doktafia 10-Mar-2012Konsep Dasar (4/4)Contoh berikut adalah contoh bagaimana membangun operand yang absahdalam suatu bahasa pemograman. Kita definisikan himpunan 8 produksidengan simbol Start adalah <OPERAND> sebagai berikut :1. <OPERAND>  <ID> | <INTEGER>2. <ID>  <LETTER><LIST>3. <LETTER>  x | y | z4. <LIST>  <LETTER><LIST> | <DIGIT><LIST> | ^5. <DIGIT>  0 | 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 96. <INTEGER>  <SIGN><DIGIT><DIT>7. <SIGN>  + | -8. <DIT>  <DIGIT><DIT> | ^ <OPERAND>  <ID>  <LETTER><LIST>  y <LIST>  y <DIGIT><LIST> Derivasinya  y7 <LIST>  y7^ atau y7
  10. 10. 10 doktafia 10-Mar-2012Latihan• Apakah untai terminal berikut absah sebagai operand bahasa pemograman, kalau absah tentukan derivasinya ▫ 4xy2 ▫ x2y ▫ -21x ▫ xxb ▫ +1230 ▫ x123 ▫ x-y+2 ▫ x1x2x3x ▫ xxxyyy

×