JASA SUPIR PRIBADI

Monday, 9 June 2014

Tugas Array Dimensi Satu Dan Dimensi Dua


Soal:

Buatlah ilustrasi tabel, pemetaan RMO & CMO, Jalur perpindahan serta hitunglah hasilnya dalam Hexa array - array dibawah ini :
1. Array Float A[5] dengan nilai awal A[1] = 002F[H]
     Berapa nilai A[3]?
2. Array Float A[10] dengan nilai awal A[8] = 012F[H]
     Berapa nilai A[3]?
3. Array Float A[5][4] dengan nilai awal A[1][0] = 002F[H]
     Berapa nilai A[3][3]?
4. Array Int A[5][4] dengan nilai awal A[3][3] = 00CF[H]
     Berapa nilai A[0][1]?

Jawab:

1. Array Float A[5] dengan nilai awal A[1] = 002F[H]. Berapa nilai A[3]?

Diketahui :
A[i] = A[3]
B  = 2F(H)
i  = 3
L = 4
Penyelesaian :
A[i] = B + (i – 1) * L
A[3] = 2F(H) + (3 – 1) * 4
A[3] = 2*17(H) + 8(D)
A[3] = 34(H) + 8(H)
A[3] = 42(H)



2. Array Float A[10] dengan nilai awal A[8] = 012F[H]. Berapa nilai A[3]?

Diketahui :
A[i] = A[3]
B  = 12F(H)
i  = 3
L = 4
Penyelesaian :
A[i] = B + (i – 1) * L
A[3] = 12F(H) + (3 – 1) * 4
A[3] = 12*17(H) + 8(D)
A[3] =204(H) + 8(H)
A[3] = 212(H)






3. Array Float A[5][4] dengan nilai awal A[1][0] = 002F[H]. Berapa nilai A[3][3]?


Rumus:
RMO : @M[i][j] = M[0][0] + {(j - 1) * K + (i - 1)} * L
CMO : @M[i][j] = M[0][0] + {(i - 1) * N + (j - 1)} * L
@M[i][j] = Posisi Array yg dicari
M[0][0] = Posisi alamat awal index Array
i = Baris
j = kolom,
L = Ukuran memory type data
K = Banyaknya elemen per kolom
N = Banyaknya elemen per baris

Secara Baris Per Baris (Row Major Oder / RMO)

Jalur perpindahan
Float 4 byte
Perpindahan baris : 2-0 = 2 * 4 (kolomnya) = 8
Perpindahan kolom : 3-0 = 3
Total perpindahan : 8 + 3 = 11
 A[1][0] > A[1][1] > A[1][2] > A[1][3] > A[2][0] > A[2][1] > A[2][2] > A[2][3] > A[3][0] > A[3][1] > A[3][2] > A[3][3]
Hasil
@A[i][j] = @A[1][0] + {(i - 1) * N + (j - 1)} * L
A[3][3] = 2F(H) + {(5 – 1) * 5 + (4– 1)} * 4
A[3][3] = 2*17(H) + 23*4
A[3][3] = 34(H) + 92(D)
A[3][3] = 34(H) + 5C(H)
A[3][3] =34(H) + 60(H)
A[3][3] = 94(H)

Secara Baris Per Baris (Coloumn Major Oder / CMO)

Jalur perpindahan
Float 4 byte
Perpindahan baris : 3-0 = 2 * 5 (kolomnya) = 15
Perpindahan kolom : 2-0 = 2
Total perpindahan : 15 + 2 = 17
A[2][0] > A[3][0] > A[4][0] > A[0][1] > A[1][1] > A[2][1] > A[3][1] > A[4][1] > A[0][2] > A[1][2] > A[2][2] > A[3][2] > A[4][2] > A[0][3] > A[1][3] > A[2][3] > A[3],[3]
Hasil
@M[i][j] = @M[1][0] + {(j- 1) * K + (i - 1)} * L
A[3][3] = 2F(H) + {(4 – 1) * 4 + (5– 1)} * 4
A[3][3] = 2*17(H) + 16*4
A[3][3] = 34(H) + 64(D)
A[3][3] = 34(H) + 40(H)
A[3][3] =74(H)

4. Array Int A[5][4] dengan nilai awal A[3][3] = 00CF[H]. Berapa nilai A[0][1]?




Rumus:
RMO : @M[i][j] = M[0][0] + {(j - 1) * K + (i - 1)} * L
CMO : @M[i][j] = M[0][0] + {(i - 1) * N + (j - 1)} * L
@M[i][j] = Posisi Array yg dicari
M[0][0] = Posisi alamat awal index Array
i = Baris
j = kolom,
L = Ukuran memory type data
K = Banyaknya elemen per kolom
N = Banyaknya elemen per baris


Secara Baris Per Baris (Row Major Oder / RMO)

Jalur perpindahan
Int 2 byte
Perpindahan baris : 0-3 =  -3 * 4 (kolomnya) = -12
Perpindahan kolom : 1-3 = -2
Total perpindahan : -12+ (-2) = -14
 A[3][2] > A[3][1] > A[3][0] > A[2][3] > A[2][2] > A[2][1] > A[2][0] >
A[1][3] > A[1][2] > A[1][1] > A[1][0] > A[0][3] > A[0][2] > A[0][1]
Hasil
@A[i][j] = @A[3][3] + {(i - 1) * N + (j - 1)} * L
A[0][1] = CF(H) - {(5 – 1) * 5 + (4– 1)} * 2
A[0][1] = 12*17(H) - 23*2
A[0][1] = 204(H) - 46(D)
A[0][1] = 204(H) - 2E(H)
A[0][1] = 204(H) - 32(H)
A[0][1] = 172(H)

Secara Baris Per Baris (Coloumn Major Oder / CMO)

Jalur perpindahan
Int 2 byte
Perpindahan baris : 1-3 = -2 * 5 (kolomnya) = -10
Perpindahan kolom : 0-3 = -3
Total perpindahan : -10 + (-3) = -13
A[2][3] > A[1][3] > A[0][3] > A[4][2] > A[3][2] > A[2][2] > A[1][2] > A[0][2] > A[4][1] > A[3][1] > A[2][1] > A[1][1] > A[0][1]
Hasil
@M[i][j] = @M[3][3] - {(j- 1) * K + (i - 1)} * L
A[0][1] = CF(H) - {(4 – 1) * 4 + (5– 1)} * 2
A[0][1] = 12*17(H) + 16*4
A[0][1] = 204(H) - 64(D)
A[0][1] = 204(H) - 40(H)
A[0][1] =164(H)


Nama  : Andi Rahman
Nim     :  12130406
Kelas   : 12.2C.06

No comments:

Post a Comment