Brigida Arie Minartiningtyas, M.Kom
Struktur Data Struktur dan Data
Struktur suatu susunan, bentuk, pola atau bangunan Data suatu fakta, segala sesuatu yang dapat dikodekan atau disimbolkan dengan kode-kode atau lambang-lambang yang telah disediakan di setiap komputer.
Struktur Data
Struktur data dasar/sederhana
Array Record
Struktur data lanjut/majemuk, yang terdiri dari :
Linier : Stack, Queue, serta List dan Multilist Non Linier : Pohon Biner dan Graph
Latar Belakang Struktur data menjadi dasar dalam langkah awal perancangan program Algoritma + Struktur Data = Program
Manfaat Algoritma yang lebih jelas dan tepat, sehingga menjadikan program secara keseluruhan lebih efisien dan sederhana. Membuat program lebih ringkas, lebih bersih, lebih elegan, lebih mudah dan lebih mampu berkinerja tinggi (karena efisien dalam penggunaan memori dan waktu)
Program berjalan membutuhkan waktu beberapa detik, di mana struktur yang lain mungkin akan membutuhkan ribuan detik.
Pengertian Struktur data adalah cara menyimpan atau merepresentasikan data di dalam komputer agar bisa dipakai secara efisien
Data adalah representasi dari fakta dunia nyata Fakta atau keterangan tentang kenyataan yang disimpan, direkam atau direpresentasikan dalam bentuk tulisan, suara, gambar, sinyal atau simbol
Tipe Data Menunjukkan suatu nilai yang dapat digunakan oleh suatu variabel / konstanta. Tipe data yg tepat program dpt dieksekusi secara efektif
Secara umum dikelompokkan atas 2 bagian : Tipe data tunggal / sederhana
Integer Real Boolean Karakter
Tipe data majemuk / campuran
String
Integer Nilai bilangan bulat (integer positif, integer negatif, dan nol) Turbo Pascal
Operator Penjumlahan Pengurangan
Perkalian Pembagian Sisa Hasil Bagi
+ * DIV MOD
Real Jenis data ini ditulis menggunakan titik desimal
Terdiri atas 2 bagian : mantissa (pecahan) & eksponen
Ex : 123000 = 0.123 * 106 Turbo Pascal : 1E-38 sampai 1E+38
Operator Real Hampir sama dengan operator pada bilangan integer, namun ada beberapa operator yang hanya bisa digunakan untuk bilangan real, misalnya: Sqrt
Boolean Tipe data logika yang memiliki dua nilai yaitu true dan false
Operator Operator Logika Not Or And Xor
Operator Relasional Lebih dari Kurang dari Lebih dari sama dengan Kurang dari sama dengan Tidak sama dengan Sama dengan
> < >= <= <> =
Karakter Elemen dari suatu himpunan yang terdiri atas bilangan, abjad dan simbol-simbol khusus TURBO Pascal Deklarasi dengan tipe Char Ditulis diantara tanda petik tunggal Ex : ‘A’, ‘a’, ‘!’, ‘%’, ‘5’
STRING Barisan hingga simbol yang diambil dari himpunan karakter Campuran elemen-elemennya dibentuk dari karakter-karakter Contoh : Himpunan alphabet {A,A,1} -> string = (AB1), (A1B), (1AB),…dst. Termasuk string Null ( empty / kosong ) = { }
Karakter dan String EBCDIC (Extended Binary Coded Decimal Interchange Code)
Sistem peng-kode-an (mapping) yang menggunakan 8 binary digit (bit) untuk menyatakan suatu karakter dalam alfabet. ( 1 karakter = 8 bit ) Dalam 8 bit terdapat 28 (256) kemungkinan karakter yang dapat dibentuk
ASCII ( American Standard Code For Information Interchange)
Cara peng-kode-an yang menggunakan 7 bit untuk menyatakan suatu karakter dalam alfabet. ( 1 karakter = 7 bit).
Dalam 7 bit terdapat 27 (128) kemungkinan karakter yang dapat dibentuk, separuh dari yang dimiliki EBCDIC.
Bilangan Bulat/Integer Bilangan bulat tak bertanda bilangan biner – oktal - heksadesimal gray code BCD (binary coded decimal) Bilangan bertanda (Positif atau Negatif) Sign/Magnitude (S/M) 2’s complement
Terdapat persamaan dalam ketiga representasi tersebut berupa digunakannya MSB (most significant bit) sebagai penanda. MSB bernilai ‘0’ untuk bilangan positif dan ‘1’ untuk bilangan negatif
Sign Magnitude Salah satu storage mapping yang dapat dilakukan terhadap integer Digit untuk tanda integer positif atau negatif dan sebarisan digit untuk menyataka magnitude/besarnya. Contoh -7 = -111 +7 = +111
Sign-magnitude adalah metode yang umum digunakan untuk mempresentasikan tanda dalam bilangan float Bagi kita mudah bekerja terhadap bilangan dalam bentuk sign-and-magnitude
Namun apabila dilakukan penjumlahan dengan kedua operand berbeda tanda, penjumlahan akan beralih menjadi pengurangan yang kadang-kadang menimbulkan kesukaran Solusi COMPLEMENT
COMPLEMENT Merubah tanda negatif pada bilangan pengurangan menjadi tanda positif
X’ adalah complement dari X terhadap R ( R ‘s complement dari X ) bila X + X’ = R. X’ = R – X menyatakan integer negatif -X.
Representasi negatif dari suatu bilangan diperoleh dari bentuk positifnya dengan mengubah bit pada MSB menjadi bernilai 1. Contoh +3 = 00011 -3 = 10011
Two’s Complement Contoh : 0101100 Langkah pertama : mulai dari kanan, temukan angka ‘1’ yang pertama Balikkan semua bit yang ada di sebelah kiri angka ‘1’ tersebut Hasil : 1010100