Anda di halaman 1dari 5

TUGAS I BAHASA DAN AUTOMATA

Nama : IBRAHIM SODIQ AS

NPM : 123112706440057

1. Jelaskan tentang konsep bahasa

2. Jelaskan perbedaan bahasa high level language dengan low level language

3. Apa kegunaan dari bahasa pemrograman dan hubungannya dengan automata

4. Apa itu automata

5. Tuliskan 3 sifat mesin abstrak

6. Tuliskan minimal contoh 5 macam mesin abstrak

7. Apa itu mesin FSA

8. Jelaskan perbedaan mesin Fisik Dan mesin abstrak

9. Tuliskan keunggulan mesin FSA

10. Berikan contoh mesin FSA yang terdiri dari diagram transisi, tuple, fungsi
transisi, table transisi dan penelusuran input yang diterima dan ditolak mesin
masing2x 5 buah contoh

Jawab :

Bahasa (bahasa formal) adalah kumpulan dari sebuah kalimat. Semua kalimat
dalam sebuah bahasa dibangkitkan oleh sebuah tata bahasa (grammar) yang sama.
Sebuah bahasa formal bisa dibangkitkan oleh dua atau lebih tata bahasa berbeda.
Dikatakan bahasa formal karena grammar diciptakan mendahului pembangkitan
setiap kalimatnya.

Kalau Bahasa pemrograman tingkat rendah (low level language), merupakan


bahasa pemrograman generasi pertama, bahasa pemrograman jenis ini sangat sulit
dimengerti karena instruksinya menggunakan bahasa mesin. Biasanya yang
mengerti hanyalah pembuatnya saja karena isinya programnya berupa kode-kode
mesin. Sedangkan Bahasa pemrograman tingkat tinggi (high level language)
merupakan bahasa yang mempunyai ciri lebih terstruktur, mudah dimengerti
karena menggunakan bahasa sehari-hari, contoh bahasa level ini adalah: Delphi,
Pascal, ORACLE, MS-SQL, Perl, Phyton, Basic, Visual Studio (Visual Basic, Visual
FoxPro), Informix, C, C++, ADA, Java, PHP, ASP, XML, dan lain-lain.
Bahasa Pemrograman berfungsi memerintah komputer untuk mengolah data sesuai
dengan alur berpikir yang kita inginkan. Keluaran dari bahasa pemrograman adalah
berupa program/aplikasi. Contohnya adalah program yang digunakan oleh kasir di
mal-mal atau swalayan. Bahasa Pemrograman sangat berkaitan dengan automata,
karena tanpa bahasa pemrograman, perintah yang akan diproses oleh mesin
abstrak sama sekali tidak ada sehingga mesin tersebut tidak bekerja.

Automata adalah otomatisasi dari proses mesin abstrak yang dapat mengenali
(recognize), menerima (accept), atau membangkitkan (generate) output / hasil
dalam bahasa tertentu yang dibuat oleh user.

Mengenali bekerja sekuensial


Menerima Input
Mengeluarkan ouput

Mesin FSA (Finite State Automata)


Mesin DFA (Deterministic finite automata)
Mesin NFA (Non deterministik finite automata)
Mesin PDA
Mesin Turing

FSA adalah mesin abstrak berupa sistem model matematika dengan masukan dan
keluaran diskrit yang dapat mengenali bahasa paling sederhana (bahasa reguler)
dan dapat diimplementasikan secara nyata. FSA memiliki state yang banyaknya
berhingga dan dapat berpindah pindah dari satu state ke state yang lain. FSA
dapat menerima input & menghasilkan output.

Model matematika yang dapat menerima input dan mengeluarkan output.


Memiliki state yang berhingga banyaknya dan dapat berpindah dari satu
state ke state lainnya berdasar input dan fungsi transisi.
Bisa mengingat state terkini.
Mekanisme kerja dapat diaplikasikan pada : elevator, text editor, analisa
leksikal, pencek parity.

Mesin fisik adalah mesin yang bisa dilihat dengan kasat mata. Sedangkan, Mesin
Abstrak adalah mesin yang tidak terlihat. Maksudnya tidak terlihat adalah mesin itu
ada, namun kita tidak menyadari pekerjaannya. Mesin abstrak digunakan untuk
membuat komputer membaca satu per satu karakter dari sebuah string.

CONTOH MESIN FSA

Diagram Transisi
Tuple :

Q = { x, y, z }

= { a, b }

= (x, a) = y

(y, b) = z

(z, a) = z

(y, a) = x

(x, b) = z

(z, a) = z

S=x

F=z

Fungsi transisi :
(x, a) = y

(y, b) = z

(z, a) = z

(y, a) = x

(x, b) = z

(z, a) = z

Tabel Transisi :

a b

x y z
y x z

z z -

Input yang diterima : ( a,b )

( a,b,a )

( a,a,b )

( a,a,b,a )

( b,a )

Input yang ditolak : ( a )

( a,a )

( a,b,b )

( a,a,b,b )

( b,b )