Objek Data Variabel dan Konstanta

Objek Data, Variabel, dan
Konstanta
Konsep Bahasa Pemrograman
Materi 4
Yudianto Sujana, M.Kom

Pengantar
Penyimpanan data di komputer (memori, register, dan lainnya)
– Organisasi yang sederhana
– Barisan bit yang dikelompokkan menjadi byte dan word
Memori komputer
– Terdiri dari sel-del dasar yang disebut alamat
– Isi sel merupakan suatu nilai
– Nilai merupakan abstraksi secara matematis yang dapat
dibaca dan dimodifikasi selama program dieksekusi
Bahasa pemrograman
– Organisasi yang kompleks
– Array, stack, string, dan lainnya

Objek Data
Pengelompokkan satu atau lebih potongan data di dalam virtual

komputer pada saat run-time
Beberapa objek data dibuat oleh programmer
– Variabel, konstanta, array
Objek data lainnya dibuat oleh sistem
– Buffer, list ruang kosong, stack
Objek data menggambarkan suatu container untuk nilai data
– Suatu tempat dimana nilai-nilai data disimpan dan dipanggil
kembali
Objek data dikarakteristikkan oleh suatu kumpulan attribute
– Attribute menentukan jumlah dan tipe nilai objek data
• Bisa berupa angka tunggal, karakter atau pointer

Objek Data
10011
Objek Data

Nilai Data

000000000010011
Variabel Terikat


Variabel
Objek data yang didefinisikan dan diberi nama secara eksplisit oleh
programmer
Objek data dasar dengan nama
Dilihat dari hardware
– Variabel merupakan suatu abstraksi dari sel-sel memori
– Nama variabel merupakan abstraksi dari alamat memori
– Statement assigment merupakan abstraksi dari modifikasi suatu sel
Mempunyai 4 bagian
– Nama dan Scope
– Tipe
– L-value
– R-value

Nama dan Scope
Nama variabel merupakan string dari karakter
Scope variabel merupakan range dari instruksi
program dimana nama tersebut dikenali
Instruksi program dapat memanipulasi suatu

variabel di dalam scopenya
Variabel akan terlihat (visible) dalam scope
Variabel tidak akan terlihat (invisible) di luar
scopenya

Example
procedure coba()
var nilai : integer;
begin
nilai := 10;
end;
begin
writeln(nilai);
end.

Example
public class Coba
{
public static void main(String[] args)
{

System.out.println(nilai);
}
public int tes()
{
int nilai = 10;
return nilai;
}
}

Tipe
Kumpulan nilai-nilai yang diasosiasikan ke variabel
bersama-sama dengan operasi-operasinya yang
dapat digunakan untuk menciptakan, mengakses
dan memodifikasi suatu nilai
Contoh tipe Integer
– Operasi matematis
Beberapa bahasa mengijinkan programmer
mendefinisikan tipe baru sendiri
type vector = array[1..10] of integer


L-value
Merupakan daerah penyimpanan yang di
binding ke variabel selama eksekusi
Lokasi memori yang diasosiasikan dengan
variabel
Digunakan untuk menangani r-value dari
variabel

R-value
Suatu nilai yang terkodekan yang
disimpan di suatu lokasi yang
diasosiasikan dengan variabel (l-value)
l-value dan r-value merupakan konsep
utama yang berhubungan dengan
eksekusi suatu program
X=Y
X : l-value
Y : r-value

Referensi dan

Variabel Tanpa Nama
Beberapa bahasa mempunyai fasilitas
untuk mengizinkan variabelnya dapat
diakses melalui r-value dari variabel yang
lain
Disebut referensi atau pointer
Kemungkinan tanpa nama
Satu-satunya cara mengakses adalah
melalui variabel bernama lainnya

Example
type pInt = ^integer;
var pIntxx : pInt;
x : integer;
begin
x := 5;
pIntxx := @x;
pIntxx := pIntxx + 1;
end.


Assignment
Suatu aksi yang menyebabkan peletakan suatu nilai di suatu
lokasi
Suatu operasi dasar untuk mengubah binding dari nilai ke
objek data
Contoh
– Pascal
• i := 3
– C family
• i=3
– Cobol
• MOVE 3 TO i

Example
A=2
B=3
A=B

A


2

A

2

B

3

B

3

Assignment
Secara garis besar, operasi assignment dapat
didefinisikan sebagai
– Menghitung l-value dari ekspresi pertama operan
– Menghitung r-value dari ekspresi kedua operan
– Memindahkan r-value yang sudah dihitung ke

objek data l-value yang sudah dihitung
– Mengembalikan r-value yang sudah dihitung
sebagai hasil dari operasi

Konstanta
Objek data dengan nama yang sudah terikat dengan
suatu nilai secara permanen (tetap)
Contoh
#define MAX 50
Nilai MAX tidak dapat diubah melalui assignment
MAX = 5
Tetapi dapat dilibatkan dalam operasi
int N;
N = 12;
N = N + MAX;

Operator
Fungsi yang beroperasi di konstanta,
variabel, dan nilai yang akan
menghasilkan sesuatu yang baru (hasil)

Operator dibedakan tingkatan precedence
Contoh
A=3+2*4
A = 11