LANGUAGES AND TRANSLATOR

dokumen-dokumen yang mirip
Teori Komputasi 10/15/2015. Bab 1: Pendahuluan. Teori Komputasi dan Teknik Kompilasi. Teori Komputasi dan Teknik Kompilasi

Teknik Kompilasi II TEKNIK KOMPILASI. Ernastuti & Sulistyo P 1/52. Ernastuti & Sulistyo

Compiler & Interpreter

TEKNIK KOMPILASI. Alamat untuk tugas: Informasi: DADANG MULYANA. dadang mulyana 2013

Pendahuluan. Tujuan Pembelajaran :

KOMPILASI. Assembler Bahasa Rakitan Bahasa Mesin Compiler (Kompilator) Bahasa Tingkat Tinggi Bahasa tingkat rendah

TEKNIK KOMPILASI (TEKKOM) ISTIQOMAH, S.KOM /SEMESTER VI

TEKNIK KOMPILASI Tony Darmanto,ST / Smt V S1 TI / STMIK WIDYA DHARMA/ Hal 1

Syntax, Semantic & Grammar. Konsep Bahasa Pemrograman Materi 3 Yudianto Sujana, M.Kom

PENGANTAR TEKNIK KOMPILASI

SEMANTIK. Sintak mendifinisikan suatu bentuk program yang benar dari suatu bahasa.

Pendahuluan. Kuliah online : Tekkom [2013/VI]

MODEL KOMPILATOR FUNGSI UMUM BAGIAN KOMPILATOR. Dosen Pengampu: Utami Dewi Widianti,S.Kom

Tahap pengembangan program

Fase-fase proses sebuah kompilasi

MK. PEMROGRAMAN SISTEM Semester/SKS : 6/3 COMPILER. Jurusan Sistem Komputer S1 Universitas Gunadarma

TEORI BAHASA & OTOMATA (PENGENALAN KOMPILASI) PERTEMUAN VI Y A N I S U G I Y A N I

Alat bantu (tools) dalam pembuatan parser/ analisis sintaksis. Menggunakan simbol persegi panjang untuk non terminal

UNIVERSITAS GUNADARMA

BAB I PENDAHULUAN. 1.1 Latar Belakang

SEMANTIK. Int vector[10];

ALGORITMA PEMROGRAMAN 1C SEMANTIKS

Proses Kompilasi. Otomata dan Pengantar Kompulasi Pertemuan 3

SINTAKS. Sintaks dari bahasa pemrograman di defenisikan dengan 2 kumpulan aturan, yaitu:

LAPORAN PRAKTIKUM 1 TEKNIK KOMPILASI

Bab III Semantik. Konsep Semantik Bahasa Pemrograman (Semantik Analisis)

Pemrograman dan Bahasa Pemrograman

Web Site :

Algoritma dan Struktur Data

SEMANTIK Syntax mendefinisikan suatu bentuk program yang benar dari suatu bahasa.

TEKNIK KOMPILASI. Dosen : Dwi Retno Wahyuningsih, S. Kom. Jurusan : Teknik Informatika Semester Genap 2007/2008

PENGEMBANGAN PROTOTIPE APLIKASI KONVERSI KODE DARI BAHASA C KE PASCAL

ALGORITMA DAN PEMROGRAMAN #2

SINTAKS. Sintaks dari bahasa pemrograman di defenisikan dengan 2 kumpulan aturan, yaitu:

SATUAN ACARA PERKULIAHAN UNIVERSITAS GUNADARMA

KOM204 : BAHASA PEMROGRAMAN

Materi Pelajaran : Algoritma Pemrograman. Siswa memahami tentang dasar dasar Algoritma Pemrograman

GARIS-GARIS BESAR PROGRAM PENGAJARAN (GBPP)

A. Pemahaman Awal. Oleh : Fiftin Noviyanto

Teknik Kompiler 12. oleh: antonius rachmat c, s.kom

ALGORITMA DALAM KAITANNYA DENGAN KOMPUTER

ALGORITMA PEMROGRAMAN 1C SINTAKS

TEKNIK KOMPILASI. Dosen : Dwi Retno Wahyuningsih, S. Kom. Jurusan : Teknik Informatika Semester Genap 2007/2008

BAB I PENGANTAR Pendahuluan Penyajian 1.1 Latar Belakang 1.2 Algoritma dan Struktur Data

Hirarki Comsky. Unrestricted. Context Sensitive Context free Regular

Algoritma Pemrograman 2C

BAHASA PEMROGRAMAN. Merupakan prosedur/tata cara penulisan program.

Implementasi OOP Pada Perangkat Lunak Pemrograman

MK. PEMROGRAMAN SISTEM Semester/SKS : 6/3 ASSEMBLER. Jurusan Sistem Komputer-S1 Universitas Gunadarma

Heru Suhartanto, PhD

Fungsi Bahasa pemrograman adalah sebagai media untuk menyusun dan memahami serta sebagai alat komunikasi antara pemrogram dengan computer.

Kualitas bahasa pemrograman: Ekspresivitas : secara jelas menggambarkan algoritma yang dibuat oleh programmer

DASAR KOMPUTER. Assembly Language

Tujuan. Pengenalan. Pengenalan Pemrograman Komputer. Komponen Dasar pada Komputer : Hardware. Komponen Dasar pada Komputer : Hardware

TEKNIK KOMPILASI. Muhamad Nursalman Ilmu Komputer FPMIPA - UPI

BAB I PENGENALAN TEKNIK KOMPILASI

PENDAHULUAN PEMROGRAMAN KOMPUTER. Mengapa Belajar Pemrograman Komputer?

A. Pemahaman Awal. Hardware dan Software(1) Ada beberapa perangkat utama di komputer 20/01/2012

PERANCANGAN DAN IMPLEMENTASI INTERPRETER BAHASA X PADA NOKIA 9210i

TEKNIK KOMPILASI PERTEMUAN Ke 4 dan 5 Abdul Muis Mappalotteng ANALISIS SEMANTIK

Teknik Kompiler 1. oleh: antonius rachmat c, s.kom

Pengantar Sistem Komputer & Algoritma

TEORI BAHASA DAN OTOMATA [TBO]

programming Proses perancangan, penulisan, pengujian,

Pengantar Teknologi Informasi. Software Komputer

SATUAN ACARA PERKULIAHAN (SAP) Semester Penempatan

APLIKASI PENGOLAH BAHASA ALAMI UNTUK OPERASI QUERI DATABASE

Aplikasi Pengolah Bahasa Alami Untuk Operasi Queri Database Agus Purwo Handoko 3)

Teknik Kompilasi Dosen: Utami Dewi W.,S.Kom

TEKNIK KOMPILASI. Firrar Utdirartatmo

Algoritma Pemrograman I

COMPILER Aspek Kompilasi

Dasar Pemrograman. Nisa ul Hafidhoh

PERANGKAT LUNAK (SOFTWARE) PTI

Komponen sebuah Kompilator

ALGORITMA, PEMROGRAMAN DAN BAGAN ALIR. Pertemuan Ke-1

Mengapa Belajar Pemrograman Komputer?

Algoritma dan Struktur Data

IT234 ALGORITMA DAN STRUKTUR DATA

Bahasa Pemograman Modul XI

BAB VI CARA PENANGANAN KESALAHAN

MATERI KULIAH ALGORITMA DAN PEMROGRAMAN I (2 SKS)

PEMROGRAMAN DAN METODE NUMERIK Semester 2/ 2 sks/ MFF 1024

Programming Language Bahasa Pemrograman

Latihan Soal. Teknik Pemrograman

Aplikasi Pengolah Bahasa Alami Untuk Operasi Boolean Antar Citra Agus Purwo Handoko 5)

Zaenal Abidin, S.Si., M.Cs. Riza Arifudin, S.Pd., M.Cs.

Pengayaan Software/Hardware dan Pengantarmukaan

P3 Pengantar Pemrograman C

PENGANTAR ALGORITMA PEMROGRAMAN

SATUAN ACARA PERKULIAHAN STMIK UBUDIYAH INDONESIA SEMESTER GENAP TAHUN AKADEMIK 2013/2014

Bahasa Pemrograman. Secara umum terdapat 4 kelompok Bahasa Pemrograman yaitu:

ALGORITMA PEMROGRAMAN 1C PENDAHULUAN KONSEP BAHASA PEMROGRAMAN

SATUAN ACARA PERKULIAHAN (SAP) MATA KULIAH PENGANTAR TEKNIK KOMPILASI

BAHASA TINGKAT TINGGI

Pemrograman. Fery Updi,M.Kom

Pengenalan Algoritma & Pemrograman

Media Pembelajaran Bahasa Pemrograman C++...(Luh Joni Erawati Dewi)

Aplikasi Pengolah Bahasa Alami Untuk Operasi Queri Database

TEKNIK KOMPILASI. Oleh. Hartono

Transkripsi:

Algoritma dan Pemrograman 1C Konsep Bahasa Pemrograman LANGUAGES AND TRANSLATOR Disusun kembali oleh : Henny Medyawati, Universitas Gunadarma Sumber: Pittman, Thomas dan James Petters, 1992 The Art of Compiler Design, Prentice Hall International Binanto, Iwan.2005. Konsep Bahasa Pemrograman, Penerbit Andi

Bahasa dan Keperluan Penterjemah Seperti bahasa-bahasa pada umumnya, bahasa pada komputer mendefinisikan cara membuat struktur kata pada kalimat untuk berkomunikasi Bahasa pada umumnya membatasi pada bentuk apa yang bisa diucapkan Sebagai contoh: Peter hit the ball, bukan ball Peter the hit Apabila seorang Englishman ingin berkomunikasi dengan orang Perancis (Frenchman) dan Englishman ini tidak mengetahui sama sekali bahasa Perancis, maka diperlukan translator

Compiler (Kompilator) Kompilator adalah program komputer yang bertindak seperti human translator It reads statements in one computer language, and if they make sense in that language, it translates them into statements with the same meaning in another computer language Kompilator menerjemahkan program dari satu bahasa pemrograman (disebut dengan source language) menjadi suatu program dalam bahasa pemrograman lain (disebut target language)

Kompilator (lanjutan) Translator yang paling sederhana (simplest) membaca kata-kata pada bahasa pemrograman sederhana, menerjemahkan kata-kata secara langsung ke dalam sejumlah instruksi yang digunakan pada komputer Inilah yang disebut dengan assembler, dan source language disebut dengan assembly language Kompilator secara umum digunakan pada bahasa yang lebih kompleks dimana tidak ada hubungan langsung antara kata-kata pada source language dengan target language

Kompilator (lanjutan) Tujuan Penggunaan translator yaitu mempermudah proses pembentukan program dalam bahasa mesin Source language yang dicompile, biasa disebut/dikenal dengan high level language

Interpreter Interpreter bekerja seperti translator yaitu membaca program dalam high level language, menerjemahkan dalam waktu cepat (seketika) seperti manusia menerjemahkan secara verbal Masih ingat fungsi kompilator? Kompilator menerjemahkan program komputer ke dalam bentuk bahasa mesin yang dieksekusi pada waktu yang berbeda Interpreter mengeksekusi pada saat program dibaca Often process a line of source program much faster than a compiler

STRUKTUR UMUM COMPILER Program sumber Symbol Table Tabel lain Tahap Penghasil Object Code Analisis Lexical Lexical Token Analisis Syntactic Parse Tree Analisis Semantik Intermediate Code Optimisasi Intermediate code yang sudah dioptimisasi Tahap pengenalan kode sumber Object code dari kompilasi lain Linking Executable code Penghasil Kode

Struktur umum compiler (lanjutan) Proses translasi suatu program dari bentuk syntax aslinya ke dalam bentuk executable, merupakan pusat dari implementasi semua bahasa pemrograman yang ada Secara logika, translasi dibagi menjadi dua, yaitu: a. analisis input program sumber b. synthesis program objek yang executable Dalam banyak translator, tingkatan logika ini tidak dengan jelas terpisah, melainkan bercampur dan berselang-seling antara analysis dan synthesis dalam basis statement-by-statement

Grammar Salah satu karakteristik yang dipelajari dalam bahasa sehari-hari adalah grammar Grammar pada suatu bahasa mendefinisikan bentuk yang benar dari suatu kalimat Contoh: sentence noun phrase verb noun-phrase verb hit noun phrase article noun proper-name proper-name Peter

Grammar (lanjutan) Bahasa pemrograman umumnya dikategorikan dalam 2 jenis grammar, (1) mendefinisikan kata-kata dalam bahasa tersebut, (2) mendefinisikan bagaimana kata-kata tersebut dapat digabungkan Primary Grammar Disebut juga phrase-structure grammar, menspesifikasikan bagian utama pada kompilator dan interpreter, yang disebut dengan parser Grammar ini menspesifikasikan bagaimana kata-kata di dalam bahasa pemrograman dapat tergabung dan membentuk program yang valid secara sintaks Parsing adalah istilah pada bahasa yang menggambarkan proses analisis sebuah kalimat dalam bahasa menurut bentuk grammarnya Secondary Grammar, Umumnya secondary grammar digunakan untuk menspesifikasikan bentuk yang benar, spelling dari kata-kata pada bahasa komputer disebut juga dengan grammar leksikal Bagian dari kompilator yang menganalisis kata-kata secara individu pada input program disebut dengan scanner

Konsep Dasar Pemrograman Program dapat diartikan: a. untuk mendeskripsikan instruksi-instruksi tersendiri, disebut source code yang dibuat oleh programmer b. untuk mendeskripsikan keseluruhan bagian dari perangkat lunak yang executable Himpunan atau kumpulan instruksi tertulis yang dibuat oleh programmer atau suatu bagian executable dari suatu perangkat lunak

Konsep dasar pemrograman (lanjutan) Pemrograman : cara membuat program program komputer suatu kumpulan urutan perintah ke komputer untuk mengerjakan sesuatu Bahasa : suatu kumpulan simbol-simbol atomic terbatas kumpulan simbol disebut alfabet Empty string dilambangkan dengan yaitu satu untaian yang tidak terlihat Untaian yang menjadi bagian dari suatu bahasa disebut kata atau kalimat Bahasa yang dapat dimengerti oleh komputer disebut bahasa pemrograman

Konsep Bahasa Pemrograman Bahasa pemrograman diciptakan untuk memecahkan masalah-masalah tertentu yang spesifik sehingga aplikasi yang dibuat oleh suatu bahasa pemrograman akan mempunyai/menempati suatu domain yang spesifik Aplikasi Bisnis : COBOL, spreadsheet Sist. Inf. Perbankan, Sist. Inf. Asuransi, dll Enterprise : SAP, Open ERP Scientific : FORTRAN, C, C++, Matlab

Pertanyaan Mengapa bahasa pemrograman perlu dipelajari? Mengapa bahasa pemrograman terus berevolusi?

Tugas Kelompok Bentuk Kelompok: 6-7 orang anggota 1 Introduction 2 Syntax 3 Semantic 4 Translation 5 Pragmatics 6 Abstraction & Generalization 7 Types ( Values, Domains and Types) 8 Logic Programming 9 Functional Programming 10 The Imperative Programming Paradigm 11 The Concurrent Programming 12 Object Oriented Programming