Code Generation Procedure and Function with Parameters.

Slides:



Advertisements
Presentasi serupa
PASCAL - 8 MODUL.
Advertisements

CARI ERROR !!! ADA BERAPA KESALAHAN ??? Apa beda JRE dan JDK ??? JDK JRE.
FUNGSI / FUNCTION ALGPROG II
Sistem Penunjang Keputusan
Dasar Komputer & Pemrog 2 A minggu 5. PROCEDURE DAN FUNCTION Procedure dan Function adalah suatu program yang terpisah dalam blok sendiri Dan memiliki.
Aturan Semantik: ContextChecking Cx. C0 masuk ke suatu scope C1 option mencetak tabel simbol (tabSim) scope ybs C2 keluar daru suatu scope C3 periksa.
Suksesor bilangan asli adalah bilangan asli
The Toy Grammar of the Course1 The Grammar of the Course program: scope R38 R0 scope:'{' C0 R1 declarations C1 R3 ';' statements C2 R5 '}' statements:,
Menciptakan Fungsi.
Rahmat Deddy Rianto Dako, ST, M.Eng
QUEUE II. IMPLEMENTASI QUEUE
PASCAL 2.
Merryl F N Meka Pembimbing : Dr. Ade Azurat S.Kom
ADMINISTRASI DAN INVENTARISASI BARANG DAN ALAT LABORATORIUM IPA
STRUKTUR DATA PERTEMUAN 5
Lab Meeting 1 Shofy Amalia.
Function.
Situasi Saat Program Berjalan (Run-time Environment)
KOMBINASI KELAS : XI IPA/IPS SEMESTER 1 Beranda SK / KD Indikator
Pemrograman Mikroprosesor
Algoritma dan Struktur Data
Computer Science, University of Brawijaya Putra Pandu Adikara, S.Kom Algoritma dan Struktur Data SubAlgoritma (Prosedur & Fungsi)
Pemograman 1 Pertemuan 4.
Person 12: Korinus gefilem Muh.eka.paputungan :Dosen: Ir. Hassanudin sirait,MT Person 12: Korinus gefilem Muh.eka.paputungan :Dosen: Ir. Hassanudin sirait,MT.
Pengembangan PS-ITK Dept. Ilmu dan Teknologi Kelautan
KOMPUTER & MASYARAKAT (Nelly Sofi).
KEAMANAN KOMPUTER ADITYO NUGROHO,ST
Struktur Dasar Java Percabangan & Perulangan
Rangkaian Arus Searah Fandi Susanto.
Procedure & Function Sub Program.
Argumen Command-line Sebuah aplikasi Java dapat menerima sejumlah argumen dari command-line. Argumen dari command line memberikan kesempatan bagi.
Fungsi Fungsi.
Fungsi Fungsi (Sub Program) :
1 Tabel Simbol (Ref : Aho 2.7, 7.6 / k10.ps). 2 Pendahuluan Definisi tabel simbol : Tabel/struktur data yg. digunakan utk. menyimpan informasi yg. berkaitan.
FUNCTIONS Pertemuan 9 Matakuliah: T0456 / Algoritma dan Metode Object Oriented Programming Tahun: 2007.
SINTAK STORED PROCEDURE
1 Pertemuan 2 Function & Pointer Matakuliah: T0044/Pemrograman Berorientasi Obyek Tahun: 2005 Versi: 1.0.
Teknik Pemrog. Terstuktur 2
Fungsi dan Prosedur.
Prosedur dan Fungsi Triana Elizabeth, S.Kom.
Command line argument.
OPERATOR DAN FUNGSI MATEMATIK. Operator  Assignment operator Assignment operator (operator pengerjaan) menggunakan simbol titik dua diikuti oleh tanda.
Pemrograman Berbasis Objek Johannes Simatupang, MKom, Cobit5 NIDN : Pertemuan-4 Versi
MATERI PERKULIAHAN TEKNIK KOMPILASI
Pengantar Teknik Kompilasi
BAB 6 FUNGSI DAN PROSEDUR.
Stack.
Algoritma pemrograman 2a
Person 8.
Algoritme dan Pemrograman
Command line argument.
Tumpukan Dengan Array Ika Menarianti.
Remainder Senin depan mulai UTS Praktikum
Latihan #0 Dengan menggunakan pernyataan looping WHILE dan jumlah instruksi sesedikit mungkin, tuliskan cuplikan program (bukan program lengkap, hanya.
Procedure, fungsi dan parameter
Algoritme dan Pemrograman
Person 9.
STACK / TUMPUKAN Struktur Data.
STACK Yohana Nugraheni.
Tipe data & Variabel 1. Aturan Leksikal. 2. Operator. 3. Statement
Implementasi Proc and Func
Parameter Ketika procedure atau function dipanggil, kita dapat melewatkan suatu nilai ke dalam function atau procedure tersebut. Nilai yang dilewatkan.
Tipe data & Variabel 1. Aturan Leksikal. 2. Operator. 3. Statement
STRUKTUR DATA PERTEMUAN 4
Fungsi.
STRUKTUR DATA (3) STACK.
Pemrograman Berorientasi Objek
Tim ALPRO Teknik Informatika
Teknik Pemrog. Terstuktur 2
BAB 6 SUB PROGRAM.
Transcript presentasi:

Code Generation Procedure and Function with Parameters

Definisi Proc and Func with parameters declaration: –type 'func' identifier C3 C26 R7 C22 C23 C5 C0 R2 funcBody, –'proc' identifier C3 C24 R7 C22 C0 R1 procBody funcBody: '=' expression C36 C11 C11 C2 R6 R43 R9 C7, '(' C30 parameters C35 C1 ')' '=' expression C36 C11 C11 C27 R6 R43 R9 C7 procBody: scope R42 R9 C7, '(' C30 parameters C35 C1 ')' scope C27 R5 R42 R9 C7 parameters: identifier C3 C4 C25 ':' type C5 C11 C7 C34 moreParameters moreParameters:, ',' identifier C3 C4 C25 ':' type C5 C11 C7 C34 moreParameters

Pemanggilan Proc with arguments –assignOrCall: C28 C29 R45 R44 C7, '(' R45 C28 C30 arguments ')' C32 R44 C7, Pemanggilan Func with arguments –primary: identifier C6 subsOrCall –subsOrCall: C37 R49 C29 C8 R50 C7, '(' C33 R46 C30 arguments ')' C32 C8 R47 C7, –arguments: expression C34 C31 C11 R48 moreArguments –moreArguments:, ',' expression C34 C31 C11 R48 moreArguments

Untuk Fungsi dan prosedur –C22 masukkan lexical level dan order number ke dlm tabSim –C23 masukkan type int atau bool –C36 periksa bahwa type dari ekspresi sama dengan type dari fungsi Untuk parameter –C24 masukkan prosedur ke dlm tabSim –C25 masukkan parameter ke dlm tabSim –C26 masukkan fungsi ke dlm tabSim –C27 keluar dari scope yang mengandung parameter –C28 periksa bahwa id merupakan nama prosedur –C29 periksa bahwa fungsi atau prosedur tak punya parameter –C30 push jumlah argument = 0 –C31 periksa argument terhadap parameter –C32 periksa bahwa semua argumen sudah dilihat, pop jumlah argumen –C33 periksa bahwa id adalah nama fungsi –C34 tambah nilai jumlah argumen –C35 masukkan jumlah argumen (parameter) ke dalam tabSim, pop jumlah argumen –C37 if id suatu fungsi maka C33 else C20

Fungsi, prosedur dan parameter. –R1 periksa bahwa lexic level <displaySize. Buat instruksi untuk memasuki scope statement. –R2 periksa bahwa lexic level <displaySize. Buat instruksi untuk memasuki scope ekspresi. –R42 buat instruksi unutk kembali dari prosedure. –R43 buat instruksi untuk kembali dari fungsi. –R44 buat instruksi untuk memanggil suatu prosedur. –R45 buat instruksi untuk membentuk tanda block untuk pemanggilan prosedur. –R46 buat instruksi untuk membentuk tanda block untuk pemanggilan fungsi. –R47 buat instruksi untuk memanggil fungsi. –R48 buat instruksi untuk menyimpan argument untuk pemanggilan prosedu/fungsi. –R49 if identifier suatu fungsi maka R46 else R31 –R50 if identifier suatu fungsi maka R47 else R32

Contoh proc dan func with parms {var a: int proc b (a: int,c:int) { var d : int; put “in proc b, a “,a,” c “,c } var c : int int func d (a:int,c:int) = a*c var e : int; a:=2 c:=2 e:=2 b(a*c,e) e:=e+d(a,c) Put “e “,e } Diskusikan masalah2 aksi semantik dan pembentukan kodenya yang terkait dengan proc dan func dgn parameters