Berikut ini adalah pertanyaan dari farhanurawalia pada mata pelajaran TI untuk jenjang Sekolah Menengah Pertama
Jawaban dan Penjelasan
Berikut ini adalah pilihan jawaban terbaik dari pertanyaan diatas.
- &x[9] = 1018H
- &x[8] = 1014H
Pembahasan
Pengalamatan Elemen Array
Nomor 1
Tidak jelas tipe data array-nya apa.
Asumsi: tipe data array adalah integer
Deklarasi array: int x[15]
Alamat x[3]: &x[3] = 1000H
Untuk menghitung alamat x[9], kita harus tahu besar alokasi memori untuk tipe data integer. Tipe data int membutuhkan 4 byte, sehingga:
&x[9] = &x[3] + (9–3)×4 [desimal]
⇒ &x[9] = 1000H + 24 [desimal]
⇒ &x[9] = 1000H + 0018H
⇒ &x[9] = 1018H
Nomor 2
Deklarasi array: int x[15]
Besar alokasi memori setiap elemen: 4 byte (karena tipe elemen array adalah integer)
Alamat x[3]: &x[3] = 1000H
&x[8] = &x[3] + (8–3)×4 [desimal]
⇒ &x[8] = 1000H + 20 [desimal]
⇒ &x[8] = 1000H + 0014H
⇒ &x[8] = 1014H
__________________________
Tambahan
Pada penyelesaian di atas, 24 desimal = 0018H, maksudnya adalah 24 desimal sama dengan 18 heksadesimal.
Proses konversinya adalah sebagai berikut.
24 : 16 = 1 SISA 8
1 : 16 = 0 SISA 1
Sisa-sisa pembagian tersebut dirangkaikan dari yang terakhir hingga yang pertama, maka kita memperoleh: 18
Sehingga:
24₍₁₀₎ = 18₍₁₆₎ atau 18H
⇒ Agar menjadi 4 digit heksadesimal, kita sisipkan (padding) 2 digit 0 di depan, menjadi 0018H
Begitu pula untuk nomor 2, yaitu 20 desimal = 0014H.
Semoga dengan pertanyaan yang sudah terjawab oleh henriyulianto dapat membantu memudahkan mengerjakan soal, tugas dan PR sekolah kalian.
Apabila terdapat kesalahan dalam mengerjakan soal, silahkan koreksi jawaban dengan mengirimkan email ke yomemimo.com melalui halaman Contact
Last Update: Sat, 09 Jul 22