Jumat, 26 Februari 2010

PEMETAAN ARRAY DIMENSI SATU KE STORAGE

Seperti halnya struktur data yang lain, ada beberapa cara untuk menyajikan array di dalam memori. Skema penyajian dapat dievaluasi berdasarkan 4 karakteristik, yakni :
1. kesederhanaan dari akses elemen
2. mudah untuk ditelusuri
3. efisiensi dari utilitasi storage
4. mudah dikembangkan

Umumnya tidaklah mungkin untuk mengoptimalkan keempat faktor tersebut
sekaligus. Pandang array satu dimensi NOPEG dengan batas bawah subscript 1, dan batas
atas subscript = N. Salah satu cara untuk menyimpan array ini adalah sedemikian sehingga urutan fisik dari elemen sama dengan urutan logik dari elemen. Storage untuk elemen NOPEG(I+1) adalah berdampingan dengan storage untuk elemen NOPEG(I), untuk setiap I = 1, 2, 3,..., N-1. Untuk menghitung alamat (address) awal dari elemen NOPEG(I), diperlukan untuk mengetahui 2 hal yakni :
1. address awal dari ruang storage yang dialokasikan bagi array tersebut.
2. ukuran dari masing-masing elemen array.

Address awal dari array, kita nyatakan dengan B, disebut juga base-location. Misalkan
bahwa masing-masing elemen dari array menduduki S byte.

Maka, address awal dari elemen ke-I adalah :
B + (I-1) * S

Sekarang kita perluas persamaan di atas untuk mendapat address dari elemen ke-I dari
array yang mempunyai batas bawah subscript tidak sama dengan 1. Perhatikan array
Z(4:10), maka address awal dari Z(6) adalah :

B + (64) * S

Untuk array Z2 (-2:2) misalnya, address awal dari Z2(l) adalah :
B + (I -(-2)) * S

Maka secara umum, untuk array :
ARRAY(L:U),

elemen ARRAY(I) mempunyai address awal
B + (U-L) * S

Selasa, 23 Februari 2010

Struktur Data - TUMPUKAN (STACK)

Tumpukan (stack) adalah sekumpulan data yang organisasi atau strukturnya berupa tumpukan. Elemen-elemen baru atau biasa disebut simpul (node) dapat diletakkan maupun diambil dari sebuah tumpukan hanya dari bagian akhir (atas). Oleh sebab itu, maka tumpukan mengacu pada struktur LIFO (Last In First Out), yaitu elemen yang terakhir masuk adalah yang awal dapat dikeluarkan. Kadang juga disebut struktur FILO (First In Last Out).
Aaron M. Tenenbaum mendefinisikan stack sebagai berikut : (Tenenbaum, Aaron:1996)
“A stack is an ordered collection of items into which new items may be inserted and from which items may be deleted at one end, called the top of the stack”
Beberapa contoh ilustrasi yang dapat menggambarkan tumpukan dan cara beroperasinya adalah tumpukan sate, tumpukan Compact Disk (CD), dan lain-lain. Sate misalnya, si pembuat sate menusukan (memasukan) daging sate ke tusukan satu per satu dari ujung tusukan (ujung yang runcing) menuju/mendekati batas pangkal, jika telah dimasak, maka si pemakan sate akan mengeluarkan (memakan) sate satu persatu dari ujung (yang akhir-akhir dimasukan si pembuat, itulah yang awal-awal dimakan). Demikian juga dengan tumpukan CD, orang akan mengambil CD dari tumpukan teratas yang mana merupakan yang terakhir dimasukan di dalam tumpukan.
Struktur data tumpukan banyak digunakan di beberapa aplikasi komputer. Sebagai contoh adalah sebuah prosessor yang mengeksekusi sebuah program, ketika pemanggil fungsi (function call) tercipta, maka fungsi yang dipanggil tersebut harus mengetahui bagaimana untuk kembali ke program, oleh sebab itu alamat (address, di memori komputer) saat ini dari eksekusi program harus dimasukan (push) kedalam tumpukan. Suatu ketika fungsi tersebut selesai dilaksanakan, alamat yang disimpan/dimasukan kedalam tumpukan tadi dikeluarkan kembali dari tumpukan. Jika deretan pemanggil fungsi muncul, maka nilai pengembalian (return value) berturut-turut akan dimasukan kedalam tumpukan dengan mengikuti struktur LIFO, sehingga masing-masing fungsi dapat kembali bersesuaian fungsinya untuk memanggil program.
Tumpukan juga digunakan oleh compiler didalam memproses evaluasi ekspresi dan men-generate kode bahasa mesin. Tumpukan juga digunakan untuk mengelola/menyimpan alamat kembalian (return address) dalam sebuah rantai pemanggil method (method calls) selama eksekusi program.


sumber
http://imamshofi.wordpress.com/2009/03/11/struktur-data-tumpukan-stack/

Jumat, 19 Februari 2010

PEMETAAN KE STORAGE

MAPPING KE STORAGE

n INTEGER

Bentuk mapping ke storage dari integer dapat dilakukan dengan beberapa cara, yaitu : 1. Skema Sign dan Magnitude 2. Skema One's Complement 3. Skema Two's Complement
m SKEMA SIGN AND MAGNITUDE
Cara ini merupakan bentuk konvensional yang digunakan manusia untuk menyatakan suatu bilangan dalam bentuk biner. Di sini representasi bilangan positif dan negatif hanya dibedakan dengan tanda saja. Biasanya tanda positif atau negatif ditunjukkan oleh digit terdepan dari bentuk binernya, untuk representasi dengan jumlah digit tertentu.

SKEMA TWO'S COMPLEMENT DAN ONE'S COMPLEMENT
Kedua skema ini merupakan cara yang digunakan untuk mengatasi kesulitan yang telah disebutkan di atas. Diberikan bilangan integer non negatif X, X' dan R. Didefinisikan bahwa X' adalah komplemen dari X relatif terhadap R, jika
X + X' = R
. X disebut sebagai bentuk true, sedangkan
X' = R - X
disebut bentuk komplemen. Bentuk komplemen X' = R - X menyatakan bilangan integer negatif X. Sedangkan bentuk true X menyatakan integer positif X.

SUMBER:
http://www.docstoc.com/docs/20490332/catatan-struktur-data-1

Kamis, 18 Februari 2010

DEKLARASI DATA

Deklarasi

Dalam setiap penulisan bahasa pemograman deklarasi sangat digunakan apabila dalam penulisan program dibutuhkan indentifier atau tanda pengenal. Indentifier pada umumnya di buat oleh progremmmer yang digunakan untuk mewakili nilai dari suatu object.
Indentifier yang dikenal dalam Delphi adalah label, konstanta, tipe, fungsi, procedure maupun variabel.

1. Deklarasi Konstanta

Deklarasi konstanta adalah tanda pengenal dalam Delphi yang mempunyai nilai yang sudah tetap. Definisi konstanta diawali dengan kata baku Const diikuti dengan kumpulan indentifier yang diberi sebuah nilai.

2. Deklarasi Variabel

Deklarasi variabel adalah tanda pengenal dalam Delphi yang mempunyai nilai yang mana nilai tersebut akan terus berubah selama proses berjalan. Definisi variabel diawali dengan kata baku Var diikuti dengan kumpulan identifier yang diikuti dengan tipe data yang dibutuhkan.


SUMBER
http://elearning.upnjatim.ac.id/courses/FKK1002/work/48cd30982d343tipe_data_operator.htm

Rabu, 17 Februari 2010

Tipe Data

Tipe Data Sederhana:
Pascal sudah memiliki dan memnyediakan beberapa tipe data sederhana yang sudah siap kita pakai. Tipe-tipe data yang sudah disediakan Pascal adalah:
* Integer
* Boolean
* Real
* Karakter
* String

1. Integer adalah tipe data nilainya merupakan bilangan bulat dan teerbagi atas beberapa macam.



2. Boolean digunakan untuk merepresentasikan logika. Bolean hanya dapat bernilai True(1) dan False(0). Di bawah ini adalah beberapa tipe data Boolean:
Type Range Ukuran
Boolean

3. Real biasanya digunakan untuk merepresentasikan nilai pecahan.

4. Karakter
Tipe data karakter hanya dapat menampung satu karakter saja dan mengalokasikan satu byte memori. Bentuk umum dari tipe data karakter adalah:

Var
: char;

Berikut ini contoh dari penggunaan tipe data karakter:

Var
Kalimat : string;
Nama : string(20);
String : string(30);


String
String adalah tipe data gabungan(array) dari karakter sebanyal 256 karakter. Bentuk umum dari string adalah:

Var: string;

Berikut ini adalah contohnya:

Var
Nama : string(20);
Alamat : string(30);


Itulah beberapa tipe data sederhana yang sudah disediakan oleh Pascal dalam bahasa pemrograman Pascal. Namun ada juga tipe data lain yang elemennya kita sebutkan satu persatu. Tipe data ini adalah tipe data Enumerasi. Bentuk umum dari tipe data enumerasi adalah:

type : (elemen1, elemen2, elemen3….elemenN);

contohnya:

type
binatang = (anjing, kucing, ayam, babai);



sumber :

http://www.nusinau.com/dasar-dasar-mempelajari-struktur-data/