BAB I TIPE DATA
Struktur data : koleksi data yang dapat dikarakteristikkan oleh orgainisasi serta operasi yang didefinisikan Kategori data A. Type Data Sederhana (Data Sederhana) 1. Data Sederhana Tunggal - Integer - Boolean - Real - Bilangan Kompleks - Karakter 2. Data Majemuk - String
Struktur Data 1. Struktur Data Sederhana - Array (Larik) - Record (Rekaman) 2. Struktur Data Majemuk a. Linier : Stack, Queue, Linear Link List b. Non Linier : Binary Tree, Binary Search Tree, M-Way Search Tree, Tree,Graph
Type Data Sederhana 1. Integer N = {..., -2, -1, 0,1, 2, ..} adalah angka bulat Sebuah integer N, disajikan sebagai sebuah String di dalam memori komputer. Operasi Dalam Integer : 1. Unary : operator yang hanya menggunakan satu operand - Negasi : ~ 2. Binary : operator yang menggunakan 2 operand
2. Real Bentuk Umum : X = M * RE X = bilangan real M = mantisa (pecahan) R = radix (basis) E = eksponen
3. Boolean Hanya bernilai Benar (True / 1) atau Salah (False / 0) Operasi Boolean: 1. Unary : Negasi (NOT), prioritas utama. 2. Binary : AND dan OR Nilai True dan False dapat juga dihasilkan dari Operator Relasional : =, <, >, <>, <=, >=
Karakter : elemen dari suatu himpunan yang terdiri 4. Karakter & String Karakter : elemen dari suatu himpunan yang terdiri atas bilangan, abjad dan simbol khusus Alfabet : himpunan hingga karakter yang membentuk String String : barisan hingga simbol yang diambil dari himpunan karakter. String Null biasanya dinyatakan dengan . String Null berbeda dengan Blank. Panjang String Null, = 0 Panjang String Blank = 1 Vocabulary : himpunan tak hingga dari string yang dibentuk oleh alfabet VA atau A* : suatu vocabulary V yang dibentuk dari alfabet A.
Operasi String : 1. LEN (String) Menghitung panjang String 2. CONCAT (S1, S2) Menggabungkan dua string 3. SUBSTR (S,i,j) Mengambil sebagian dari string yang berawal dari posisi ke i dan panjangnya j, 4. INSERT (S1, S2, j) Menyisipkan string S2 ke string S1, sehingga karakter pertama S2 menempati posisi karakter ke j dari S1, selesai dengan seluruh string S2 dilanjutkan dengan string S1. 5. DELETE (S,i,j) Menghapus string yang panjangnya j, bermula dari posisi ke i
MAPPING KE STORAGE INTEGER Bentuk mapping ke storage dari integer dapat dilakukan dengan beberapa cara yaitu : a. Signed Magnitude Representasi bilangan positif dan negatif hanya dibedakan dengan tanda saja untuk positif (0) dan untuk negatif (1) ditunjuukan oleh digit di depan b. Ones’ Complement Jika x bilangan bulat non negatif maka X ‘ bilangan binary negatif dari X sedemikian sehingga X + X’ = R R = 2N- 1
c. Two’s Complement Jika x bilangan bulat non negatif maka X ‘ bilangan binary negatif dari X sedemikian sehingga X + X’ = R R = 2N Catatan : Untuk R = 2N dan R = 2N- 1 , bilangan bulat yang dapat disimpan dengan ke-2 cara ini adalah : 2 (N-1) - 1
- American Standard Code for Information Interchange 2. KARAKTER a. ASCII - American Standard Code for Information Interchange - Dikembangkan oleh ANSI - Menggunakan 7 bit (bit ke delapan untuk parity bit) - Total karakter = 128 (27) b. EBCDIC - Extended Binary Coded Decimal Interchange - Dikembangkan oleh IBM - Menggunakan 8 bit - Total karakter = 256 (28)
3. String Untuk mengetahui bentuk mapping pada storage dari suatu string perlu diketahui Letak posisi awal (start) dan posisi akhir (terminal) Suatu pointer yang menunjukkan lokasi pada storage
Ada 3 cara yang umum digunakan untuk mapping suatu string ke dalam storage 1. Menggunakan tabel informasi - Nama string (Name) - Alamat awal (Start) - Panjang string (Length) 2. Menggunakan tabel informasi - Alamat Akhir (Term) 3. Menggunakan tabel informasi - Suatu tanda yang menunjukkan batas akhir
Cara lain adalah 1. Packed Suatu string yang direpresentasikan dalm benyuk packed terbagi atas beberapa word. Jumlah word yang digunakan untuk direpresentasikan string S dalam storage dengan K karakter per word adalah LENGTH(S) / K 2. Unpacked Setiap word terdiri hanya satu karakter Jumlah word yang diperlukan untuk merepresentasikan suatu string S adalah LENGTH(S)