1 / 15

Alamat Array

Alamat Array. Arrray 2 dimensi. char a[3][5] Sama dengan matriks berukuran 3x5 Pada kenyataan di memory:. Ilustrasi array 2 dimensi. Soal alamat array. 1. Diketahui variabel A dengan tipe data: int A[10] dan alamat A : &A[0] = 0FFH1000 Ditanya : Berapa &A[7]?

amaris
Download Presentation

Alamat Array

An Image/Link below is provided (as is) to download presentation Download Policy: Content on the Website is provided to you AS IS for your information and personal use and may not be sold / licensed / shared on other websites without getting consent from its author. Content is provided to you AS IS for your information and personal use only. Download presentation by click this link. While downloading, if for some reason you are not able to download a presentation, the publisher may have deleted the file from their server. During download, if you can't get a presentation, the file might be deleted by the publisher.

E N D

Presentation Transcript


  1. Alamat Array

  2. Arrray 2 dimensi • char a[3][5] • Sama dengan matriks berukuran 3x5 • Pada kenyataan di memory:

  3. Ilustrasi array 2 dimensi

  4. Soalalamat array 1. Diketahuivariabel A dengantipe data: int A[10] danalamat A : &A[0] = 0FFH1000 • Ditanya : Berapa &A[7]? 2. Diketahuivariabel A dengantipe data: int A[3][5] dan &A[0][0] = 0FFH1000 • Ditanya : Berapa &A[2][3]?

  5. Soalalamat array • Soal: int A[10], diket. &A[0] = 0FFH1000 • Berapa &A[7]? • Jawab: • intberukuran4 byte • Perpindahan 7-0 = 7 * 4 byte = 28 byte • Maka H1000 + 28 = …… (bahasdikelas) • Soal: int A[3][5], &A[0][0] = 0FFH1000 • Berapa &A[2][3]? • Jawab: • int4 byte • Perpindahanbaris: 2-0 = 2 * 5 (kolomnya) = 10 • Perpindahankolom: 3-0 = 3 • Total perpindahan: 10 + 3 = 13 * 4 byte = 52 byte • Maka H1000 + 52 = …… (bahasdikelas)

  6. RepresentasiKontigu Memoridapatdigambarkansebagaiberikut : 0000 0000 0000 0001 0000 0010 0000 0011 1111 1111

  7. Variabel yang digunakandalamlarik

  8. Deklarasi Array Untukmeningkatkanfleksibilitas, makasebaiknyaseluruhstruktur data didalam program dibawahkendalikita, kitadapatdenganmudahmelakukanpengubahanimplementasiuntukmeningkatkankinerjatanpamempengaruhi program yang menggunakanstruktur data. ≈ Deklarasi Array satudimensi Nama_larik : Array[Lk..Uk] of tipe data Lk & Ukadalahtipe data sederhanadanterdefenisi

  9. Array Mapped Function Salahsatukarakteristiklarikadalahpenyimpanansecaralogikadanfisikadalahsama, sehinggapemetaanantaralogikadanfisikdapatterlihatdalamgambarberikut : 4 40

  10. Alamat data dalamMemori KomponenAlamat X1 b X2b+4 X3b+8 ….. ……. X10b+36 Base address b B+4 b+8 b+12 b+36 Sistem Operasi Alamat komponen yang 3 RumusUntukMencariAlamatadalah Add(x(i)) = b + (i-1)*L B : Base Address (alamatAwal) L : Length (besarmemoriuntukKomponen)

  11. Untuklarikduadimensi, pemetaankedalammemoridapatdilakukandenganduacarayaitumembelahsecarabarisdanmembelahsecarakolom Inisialisasistruktur Data : tipe data variabel [1..x, 1..y] Misalkanstruktur data adalahsbb : Int A [3] [4] a11 a12 a13 a14 a21 a22 a23 a24 a31 a32 a33 a34 Besarnya memori yang dibutuhkan oleh struktur data adalah M = X *Y *L = 3 *4 *4 = 48byte memori

  12. Membedahperbaris A Untukmencarialamat data yang beradapadap,qdapathitungdengan : Add A(p,q) = b + ((p-1)*Y + (q-1))* L Contoh : A(3,3) = b+ ((3-1)x 4 + 3-1)x 4 = b+(2x4+2)x4 = b+10 x 4 = b+ 40 b b+4 b+8 b+12 b+44

  13. Membedahperkolom A Untukmencarialamat data yang beradapadap,qdapathitungdengan : Add A(p,q) = b + ((q-1)*X + (p-1))* L Contoh : A(3,3) = b+ ((3-1)x 3 + 3-1)x 4 = b+(2x3+2)x4 = b+8 x 4 = b+ 32 b b+4 b+8 b+12 b+44

More Related