Your SlideShare is downloading. ×
If412 01
If412 01
If412 01
Upcoming SlideShare
Loading in...5
×

Thanks for flagging this SlideShare!

Oops! An error has occurred.

×
Saving this for later? Get the SlideShare app to save on your phone or tablet. Read anywhere, anytime – even offline.
Text the download link to your phone
Standard text messaging rates apply

If412 01

445

Published on

0 Comments
0 Likes
Statistics
Notes
  • Be the first to comment

  • Be the first to like this

No Downloads
Views
Total Views
445
On Slideshare
0
From Embeds
0
Number of Embeds
0
Actions
Shares
0
Downloads
3
Comments
0
Likes
0
Embeds 0
No embeds

Report content
Flagged as inappropriate Flag as inappropriate
Flag as inappropriate

Select your reason for flagging this presentation as inappropriate.

Cancel
No notes for slide

Transcript

  • 1. IF412 – Konsep Bahasa Pemrograman Pertemuan : 01 PENDAHULUAN Von Neumann Machine CONTROL UNIT ARITHMETIC UNIT INPUT/ OUTPUT UNIT Accumulator A Register R MEMORY FOR INSTRUCTIONS AND DATA Organization of the von Neumann machine Bahasa Mesin Vs Bahasa Tingkat Tinggi : BAHASA MESIN BAHASA TK TINGGI • Sulit • Lebih Mudah • Cepat • Lebih Lambat : • Space Sedikit − Interpreter − Compiler • Space Sedikit • Portable • Terstruktur What Languages Provide ? • Model komputasi • Tipe data dan Operasi • Fasilitas Abstraksi • Pengecekan (Checking) Struktur Sintak • Context-Free-Grammer • BNF (Backus-Naur Form) • EBNF (Extended BNF) • Syntax chart ELEMEN-ELEMEN BAHASA PEMROGRAMAN • Notasi Ekspresi (Mis : prefix, infix, postfix) BINA NUSANTARA Edisi : 1 Revisi : 1 Sept - 1998
  • 2. IF412 – Konsep Bahasa Pemrograman Pertemuan : 01 • Assosiativitas dan Presedensi • Representasi Ekspresi dengan TREE • Mengevaluasi Ekspresi dengan STACK Fungsi • Definisi • Bagian-Bagian Fungsi • Deklarasi fungsi • Cara pemanggilan fungsi • Mekanisme Evaluasi Fungsi Selective Evaluation if <kondisi> then <ekspresi-1> else <ekspresi-2><kondisi> adalah sebuah ekspresi yang mempunyai nilai true & false. Jika true, ekspresi-1 dievalusi, dan jika tidak (false) ekspresi-2 yang akan dievaluasi. Lexical Scope • Definisi • Contoh Fungsi Rekursif • Definisi • Activation • Jenis Fungsi rekursif : o Linear Recursive o Tail Recursive • Tahapan Evaluasi Fungsi Rekursif Linier: o winding phase o unwinding phase • Contoh : fungsi factorial int fact(int n){ if(n = = 0) return 1; else n * factorial(n-1); } fact(3) = 3 * f(2) = 3 * (2 * f(1)) = 3 * (2 * (1 * f(0))) = 3 * (2 * (1 * 1)) = 3 * (2 * 1) =3*2 =6 int g(int n, int a){ if (n = = 0) return a; BINA NUSANTARA Edisi : 1 Revisi : 1 Sept - 1998
  • 3. IF412 – Konsep Bahasa Pemrograman Pertemuan : 01 else g(n-1, n*a); } f(3)=3*f(2) f(3)=3*f(2) f(3)=3*f(2) f(2)=2*f(1) f(2)=2*f(1) f(3)=3*f(2) f(1)=1*f(0) f(2)=2*f(1) f(1)=1*f(0) f(0)=1 f(3)=3*f(2) f(2)=2*f(1) f(3)=3*f(2) f(1)=1*1=1 f(2)=2*1=2 f(3)=3*2=6 Recursive evaluation of a factorial function. g(3,1)=g(2,3) g(2,3)=g(1,6) g(1,6)=g(0,6) g(0,6)=6 Evaluation of a tail-recursive factorial function Tipe Data • Definisi • Kategori o Machine Level / Basic Types : Contoh : integer, character, real dan boolean. o Language Level : Contoh : tipe-tipe terstruktur seperti Array, record, list yang dibangun dari tipe-tipe yang lebih sederhana. o User Level : Contoh : tipe-tipe yang didefinisikan oleh user, seperti gabungan beberapa data dan fungsinya, contohnya classes pada bahasa C++. BINA NUSANTARA Edisi : 1 Revisi : 1 Sept - 1998

×