REKAMAN Rekaman atau record adalah sekumpulan data yang

  • Slides: 9
Download presentation
REKAMAN Rekaman atau record adalah sekumpulan data yang disusun dari tipe data yang sama

REKAMAN Rekaman atau record adalah sekumpulan data yang disusun dari tipe data yang sama atau tipe data yang berbeda. Pada prinsipnya rekaman sama dengan larik namun perbedaan utama adalah pada larik disusun dari komponen-komponen yang mempunyai tipe data yang sama namun pada rekaman boleh disusun dari komponen yang sama atau yang bebeda. Inisialisasi adalah membentuk struktur data sekaligus pemesanan memori computer untuk kebutuhan penyimpanan stuktur data. Bentuk inisialisasi : Nama_record = record Field 1 : tipe-data 1 Field 2 : tipe-data 2 Field 3 : tipe-data 3 Fieldn : tipe-datan End Tipedata yang digunakan adalah tipe data atomik (sederhana) ataupun tipe data terstruktur.

Contoh : Mahasiswa = record Nama : string[20]; NIM : string[9]; Kelas : string[5];

Contoh : Mahasiswa = record Nama : string[20]; NIM : string[9]; Kelas : string[5]; Umur : integer; IPK : real; End; OS Field 1 Field 2 Field 3 Rekaman Secara Logika Field n Fiel 1 Field 2 Fiel 3 . . . Rekaman Field n free Rekaman Secara Fisik

Besarnya memori dapat dihitung dengan : M = L field 1 + L field

Besarnya memori dapat dihitung dengan : M = L field 1 + L field 2 + L field 3 + …. + L. field n. Untuk alamat field dapat dicari dengan Add field = b + offset Offset adalah selisih alamat awal field (komponen) dengan alamat awal record Nama Nim kelas umur ipk OS Nama NIM Kelas Umur ipk free

M (Mahasiswa) : L Nama + L Nim + L Kelas + L Umur

M (Mahasiswa) : L Nama + L Nim + L Kelas + L Umur + L IPK 20 + 9 + 5 + 2 + 6 42 Byte memori Tabel Offset untuk mahasiswa Field Tipe da ta Leng Off t s h e t Nam a String 20 0 NIM String 9 20 Kela s String 5 29 Umu r Intege r 2 34 Ipk Real 6 36 Add kelas = b + offset = b + 29

Contoh 2: Gambaran Logika Pegawai = record NIP : String[10] Nama : String[20] Alamat

Contoh 2: Gambaran Logika Pegawai = record NIP : String[10] Nama : String[20] Alamat : string[30] Tgl_lahir : string[8] Jk : Char NIP Nama 10 20 Alamat 30 8 jk 1 M (Pegawai) = L. Nip+L. Nama+LAlamat+L. Tgl_Lahir +L. JK 10+20+30+8+1 end Tgl OS NIP =69 byte memori Field Type Data Length Offset NIP Nama Almt String string 10 20 30 0 10 30 Tgl Jk String Char 8 1 60 68 Nm Tgl Jk Free

Contoh 3: Date = record NIP Gapok Nama Tanggal : integer Pegawai = record

Contoh 3: Date = record NIP Gapok Nama Tanggal : integer Pegawai = record Nip : String[10] Nama : String[15] Tgl_lahir : Date TMT : Date Gapok : Real end n hu Ta T. an T M B ul al T. gg n T M T an hu T. . Ta T M ahir ulan l_l. B al T g ahir ngg a l_l T g h i r. T a End l_l tahun : longint Tg bulan : integer

Tabel Offset untuk pegawai Field T. data length off Nip String 10 0 NAMA

Tabel Offset untuk pegawai Field T. data length off Nip String 10 0 NAMA String 15 10 Tgl_lahir Date 8 25 Tanggal Integer 2 25 Bulan Integer 2 27 Tahun Longint 4 29 Date 8 33 Tanggal Integer 2 33 Bulan Integer 2 35 Tahun Longint 4 37 Real 6 41 TMT Gapok Add tgl_lahir = b+25 Add tgl_lahir. Bulan b+27

Contoh 1 : Nilai : Array[1. . 10] of integer Mahasiswa = record Nama

Contoh 1 : Nilai : Array[1. . 10] of integer Mahasiswa = record Nama : string[20] NIM : String[8] Kelas : string[5] Nimk : Nilai IPK : Real End 1. Gambarkan Secara Logika untuk mahasiswa 2. Hitung kebutuhan memori untuk Mahasiswa 3. Cari alamat untuk data nilai mata kuliah (nimk) yang 7, jika base adress adalah 500

Contoh 2 : Dengan menggunakan data di atas, deklarasi struktur data Mhs : array[1.

Contoh 2 : Dengan menggunakan data di atas, deklarasi struktur data Mhs : array[1. . 20] of mahasiswa Maka : 1. Gambarkan secara logika untuk mhs 2. Cari alamat untuk mhs[6]. nimk[6]